Ngọc Anh
Ngọc Anh
Thảo luận 3 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 129 lượt xem

ạEm đang muốn xác định vùng in của nhiều sheetCác sheets không có số lượng

Chào thầy ạ,

Em đang muốn xác định vùng in của nhiều sheet,

Các sheets không có số lượng cột dòng giống nhau nên cần xác định vùng in từ A1 đến cell cuối cùng

Trong trường hợp sheet có các cột/ dòng bị merge thì có cách nào tìm được cell cuối cùng ko ạ

Nếu dùng lastrow & last column sẽ ko cho tọa độ chính xác của cell cuối cùng đó

Thảo luận 3 câu trả lời
Lượt xem 129 lượt xem
Vỗ tay vỗ tay
Ngọc Anh 10:02 - Feb 23, 2021

Chào bạn,

Về nguyên tắc dùng VBA là hạn chế tối đa việc Merge cell. Bởi nó làm sai lệch đi tọa độ và cách tác động tới 1 vị trí bị gộp.

Để làm được yêu cầu của bạn thì:

1. Các sheet cần có 1 điểm chung về cách xác định dòng cuối

2. Dùng vòng lặp để xét đồng thời nhiều sheet cùng lúc (có thể dùng vòng lặp For và dùng biến i đại diện cho số thứ tự của Sheet)

For i = 1 to ... 'Bạn muốn xét bao nhiêu sheet thì xác định giá trị điểm kết thúc tương ứng
Dim LastRow as long
LastRow = Sheets(i).Range(....).End(xlup).Row 'Cú pháp xác định dòng cuối
Sheets(i).PageSetup.PrintArea = "A1:G" & lastrow   'Ví dụ vùng in là từ A1 tới dòng cuối cột G
Sheets(i).Print
Next i

Nếu các sheet không có điểm chung thì bạn cần tạo ra 1 điểm chung (cái này tùy theo sáng tạo của bạn)

Vỗ tay vỗ tay
Ngọc Anh 10:02 - Feb 23, 2021

vâng em hiểu rồi, cảm ơn thầy ạ

Vỗ tay vỗ tay
Ngọc Anh 11:02 - Feb 23, 2021
Cảm ơn bạn đã tin tưởng và ủng hộ gitiho chúc bạn học tốt
Vỗ tay vỗ tay
Câu hỏi liên quan
© 2020 - Bản quyền của Công Ty Cổ Phần Công Nghệ Giáo Dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở Kế hoạch và Đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ Thông tin và Truyền thông