Làm Sao Lấy được vùng in (print area) bằng code VBA trong excel? (5 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

thnghiachau

Chỉ biết ngồi BÈ và PHÁN chuyện!!!
Tham gia
14/9/09
Bài viết
844
Được thích
710
Giới tính
Nam
Nghề nghiệp
Search
Chào GPE,
Cho mình xin hỏi các Thầy và các cao thủ trên GPE...
Trong Excel mình có thể lấy được vùng in bằng code VBA không ạ?

ví dụ:
Vùng in là A1:G30
vậy có code nào để mình biết được vùng in hiện tại là A1:G30 không ạ ???

Cám ơn diễn đàn rất nhiều.
 
Chào GPE,
Cho mình xin hỏi các Thầy và các cao thủ trên GPE...
Trong Excel mình có thể lấy được vùng in bằng code VBA không ạ?

ví dụ:
Vùng in là A1:G30
vậy có code nào để mình biết được vùng in hiện tại là A1:G30 không ạ ???

Cám ơn diễn đàn rất nhiều.
Bạn thử cho dòng code này vào module xem đúng ý bạn không .
Sub Vungin()
ActiveSheet.PageSetup.PrintArea = "$A$1:$G$30"
End Sub
 
Upvote 0
Bạn thử cho dòng code này vào module xem đúng ý bạn không .
Sub Vungin()
ActiveSheet.PageSetup.PrintArea = "$A$1:$G$30"
End Sub
Cám ơn bạn đã trả lời, nhưng không phải là ý mình hỏi.
Code của bạn là SETUP vùng in cho sheet là "$A$1:$G$30"
còn mình muốn hỏi là muốn lấy giá trị vùng in tức là mình muốn lấy kết quả vùng in đã được chọn trong sheet .
Cám ơn nhiều.
 
Upvote 0
Chào GPE,
Cho mình xin hỏi các Thầy và các cao thủ trên GPE...
Trong Excel mình có thể lấy được vùng in bằng code VBA không ạ?

ví dụ:
Vùng in là A1:G30
vậy có code nào để mình biết được vùng in hiện tại là A1:G30 không ạ ???

Cám ơn diễn đàn rất nhiều.

Thì câu lệnh cũng chỉ là vầy thôi: MsgBox ActiveSheet.PageSetup.PrintArea
 
Upvote 0
Thì câu lệnh cũng chỉ là vầy thôi: MsgBox ActiveSheet.PageSetup.PrintArea

Dạ, em có thử rồi nhưng không có hiện ra gi cả chỉ là một thông báo trống thôi .
em dùng Excel 2010. có gì thầy coi qua giúp em.
Cám ơn thầy NDU96081631 nhiều
 
Upvote 0
Dạ, em có thử rồi nhưng không có hiện ra gi cả chỉ là một thông báo trống thôi .
em dùng Excel 2010. có gì thầy coi qua giúp em.
Cám ơn thầy NDU96081631 nhiều

trống có nghĩa là:
- Hoặc trên sheet không có dữ liệu
- Hoặc bạn chưa cài máy in
- Hoặc bạn chưa thiết lập Print Area
Tôi đoán vậy
 
Lần chỉnh sửa cuối:
Upvote 0
Thì câu lệnh cũng chỉ là vầy thôi: MsgBox ActiveSheet.PageSetup.PrintArea

Ah... em đã hiểu rồi.
Nếu mình "setup Print area" rồi thì câu lệnh của thầy NDU sẽ ra kết quả,
Nếu mình chỉ chỉnh khi in thì câu lệnh của thầy NDU không có kết quả.

Vậy nếu mình chỉ chỉnh khi in thì có cách nào biết được vùng in do Exxcel tao ra không vậy?

Cám ơn thầy NDU và các bạn giúp mình.
 
Upvote 0
trống có nghĩa là:
- Hoặc trên sheet không có dữ liệu
- Hoặc bạn chưa cài máy in
- Hoặc bạn chưa thiết lập Print Area
Tôi đoán vậy

Dạ, em có dữ liệu, đã cài máy in, nhưng không có thiết lập Print area
vậy mình có cách nào để biết vùng in do Excel tạo ra chứ không phải do người sử dụng thiết lập vùng in không vậy??
Cám ơn thầy NDU nhiều
 
Upvote 0
Ah... em đã hiểu rồi.
Nếu mình "setup Print area" rồi thì câu lệnh của thầy NDU sẽ ra kết quả,
Nếu mình chỉ chỉnh khi in thì câu lệnh của thầy NDU không có kết quả.

Vậy nếu mình chỉ chỉnh khi in thì có cách nào biết được vùng in do Exxcel tao ra không vậy?

Cám ơn thầy NDU và các bạn giúp mình.
Nếu không can thiệp gì đến PrintArea thì Excel sẽ hiểu PrintArea là toàn bộ vùng có dữ liệu trên sheet. Do đó, trong trường hợp này thì PrintArea cũng chính là UsedRange. Bạn thử xem trước trang in và chạy câu lệnh MsgBox ActiveSheet.UsedRange.Address xem có khớp không.
 
Upvote 0
Nếu không can thiệp gì đến PrintArea thì Excel sẽ hiểu PrintArea là toàn bộ vùng có dữ liệu trên sheet. Do đó, trong trường hợp này thì PrintArea cũng chính là UsedRange. Bạn thử xem trước trang in và chạy câu lệnh MsgBox ActiveSheet.UsedRange.Address xem có khớp không.

Dạ, em đã làm được rồi. Áp dụng câu lệnh của nghiaphuc thật hay. Học được thêm 1 bài để áp dụng trong công việc.

Thành thật cám ơn mọi người đã giúp đỡ nhiều.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom