Báo cáo in VBA | Làm thế nào để sử dụng Excel VBA cho Bản in? (với các ví dụ)

In trong VBA rất giống với in trong excel, khi chúng ta có dữ liệu quan trọng trong excel hoặc bảng tính thì cách duy nhất để có chúng an toàn là lưu chúng vào pdf hoặc in chúng, để in chúng ta cần thiết lập lệnh in trong VBA trước khi sử dụng nó, lệnh này sẽ làm gì nếu in hoặc ghi dữ liệu vào một tệp khác.

In trong VBA Excel là gì?

VBA Printout là không có gì nhưng như thường lệ, cách chúng tôi in trong trang tính thông thường, không có sự khác biệt về điều này. Sử dụng mã VBA trong Excel, chúng tôi có thể in toàn bộ dữ liệu trang tính, chúng tôi có thể in sổ làm việc, biểu đồ, phạm vi được chỉ định, v.v.

Sau tất cả những công việc khó khăn chúng tôi đã làm để trình bày báo cáo với người quản lý mà chúng tôi thường gửi email. Nhưng trong một số trường hợp trong cuộc họp, người quản lý của bạn cần một bản in ra giấy của các báo cáo của bạn, trong những trường hợp đó, bạn cần in báo cáo bạn có trong bảng tính. Một trong những lý do khiến người quản lý của bạn cần bản in báo cáo có thể là báo cáo rất lớn để đọc trên máy tính. Trong một trang tính, chắc hẳn bạn đã làm quen với việc in các báo cáo. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách in bằng mã hóa VBA. Theo dõi bài viết này trong 15 phút tiếp theo để tìm hiểu cách in báo cáo trong VBA.

Cú pháp của VBA PrintOut trong VBA Excel

Trước khi chúng ta xem cú pháp, hãy để tôi làm rõ điều này trước. Chúng tôi in gì, chúng tôi in phạm vi, biểu đồ, trang tính, sổ làm việc. Vì vậy, phương thức PrintOut () có sẵn với tất cả các mục tiêu này.

[Từ]: Bắt đầu từ trang nào của quá trình in. Nếu chúng tôi không cung cấp bất kỳ giá trị nào, nó sẽ coi như từ trang đầu tiên.

[Tới]: Trang cuối cùng nên in là gì? Nếu bỏ qua nó sẽ in cho đến trang cuối cùng.

[Bản sao]: Bạn cần in bao nhiêu bản.

[Xem trước]: Bạn có muốn xem bản xem trước bản in trước khi tiến hành in không. Nếu có TRUE là đối số, nếu không FALSE là đối số.

Ví dụ về In trong VBA Excel

Dưới đây là các ví dụ về In trong VBA Excel.

Bạn có thể tải mẫu VBA Print Excel này tại đây - VBA Print Excel Template

Với mục đích minh họa, tôi đã tạo dữ liệu giả như trong hình dưới đây.

Bây giờ chúng ta cần in báo cáo từ A1 đến D14, đây là phạm vi của tôi. Nhập phạm vi trong mã VBA để truy cập phương thức PrintOut.

Mã:

 Sub Print_Example1 () Range ("A1: D14") End Sub 

Bây giờ hãy truy cập vào phương thức PrintOut.

Mã:

 Sub Print_Example1 () Phạm vi ("A1: D14"). PrintOut End Sub 

Tôi không chạm vào bất kỳ thông số nào, điều này đủ để in phạm vi đã chọn. Nếu tôi chạy mã này, nó sẽ in ra dải ô từ A1 đến D14.

Các tham số của phương pháp in trong VBA Excel

Bây giờ tôi đã sao chép và dán cùng một dữ liệu để sử dụng các tham số khác của phương thức PrintOut trong VBA Excel.

Khi chúng ta muốn in toàn bộ trang tính, chúng ta có thể gọi toàn bộ trang tính là Active Sheet, điều này sẽ bao gồm toàn bộ trang tính trong đó.

  • Mã để In Toàn bộ Trang tính.

Mã:

Sub Print_Example1 () ActiveSheet.UsedRange.PrintOut 'Điều này sẽ in toàn bộ phạm vi trang tính được sử dụng. Kết thúc Sub

  • Mã để giới thiệu tên trang tính .

Mã:

 Sub Print_Example1 () Sheets ("Ex 1"). UsedRange.PrintOut 'Điều này cũng sẽ in toàn bộ phạm vi đã sử dụng của trang tính được gọi là Ex 1. End Sub 

  • Mã để In tất cả các Trang tính trong Sổ làm việc .

Mã:

Sub Print_Example1 () Worksheets.UsedRange.PrintOut 'Điều này cũng sẽ in toàn bộ phạm vi đã sử dụng của tất cả trang tính trong sổ làm việc. Kết thúc Sub

  • Mã để In Toàn bộ Dữ liệu Sổ làm việc .

Mã:

Sub Print_Example1 () ThisWorkbook.UsedRange.PrintOut 'Điều này cũng sẽ in toàn bộ phạm vi đã sử dụng của tất cả trang tính trong sổ làm việc. Kết thúc Sub

  • Mã để Chỉ In Khu vực Đã Chọn .

Mã:

 Sub Print_Example1 () Selection.PrintOut 'Điều này sẽ chỉ in dải ô đã chọn End Sub 

Làm thế nào để sử dụng các tham số của phương pháp in ra trong Excel VBA?

Bây giờ chúng ta sẽ xem cách sử dụng các tham số của phương thức in ra. Như tôi đã nói, tôi đã mở rộng dữ liệu để sử dụng các thuộc tính khác.

Chắc chắn rằng điều này sẽ không được in ra trong một tờ. Chọn phạm vi từ A1 đến S29.

Mã:

 Sub Print_Example2 () Range ("A1: S29") End Sub 

Bây giờ chọn phương pháp in ra.

Mã:

 Sub Print_Example2 () Range ("A1: S29"). PrintOut End Sub 

Tham số đầu tiên và thứ hai là Từ & Đến, vị trí trang bắt đầu và kết thúc là gì. Mặc định nó sẽ in tất cả các trang nên mình không đụng đến phần này. Bây giờ tôi muốn xem bản xem trước khi in nên tôi sẽ chọn Preview là TRUE.

Mã:

 Sub Print_Example2 () Range ("A1: S29"). PrintOut Preview: = True End Sub 

Bây giờ tôi sẽ chạy đoạn mã này, chúng ta sẽ thấy bản xem trước khi in.

Điều này sẽ đến trong 2 trang.

Vì vậy, trước tiên tôi muốn thiết lập trang này thành một trang tính duy nhất. Sử dụng mã dưới đây để thiết lập trang thành một trang tính.

Mã:

 Sub Print_Example2 () With Worksheets ("Ví dụ 1"). PageSetup .Zoom = False .FitToPagesTall = 2 .FitToPagesWide = 1 .Orientation = xlLandscape End With ActiveSheet.PrintOut Preview: = True End Sub 

Thao tác này sẽ thiết lập trang để in trên một tờ cũng như in ở chế độ ngang. Bây giờ bản xem trước bản in sẽ như thế này.

Như vậy, chúng ta có thể sử dụng VBA print ra một phương thức để in những thứ chúng ta muốn in và chơi với chúng.


$config[zx-auto] not found$config[zx-overlay] not found