Cách để in gộp nhiều trang soạn thảo trong Word vào cùng 1 tệp PDF

Trong bài viết này, Học Excel Online sẽ hướng dẫn bạn cách để gộp chung tất cả các tệp Word vào cùng 1 tệp PDF.  Các câu lệnh và mã lệnh dưới đây sẽ được sử dụng cho phần mềm có tên là PDFCreator, một phần mềm đọc file PDF mã nguồn mở. Không giống với Adobe Acrobat và CutePDF, những phần mềm yêu cầu bạn phải  bỏ tiền nâng cấp lên phiên bản Pro để có thể tạo lập 1 tệp PDF thông qua mã lệnh VBA, PDFCreator là phần mềm hoàn toàn miễn phí. Bạn có thể tải xuống từ Sourceforge theo địa chỉ tại đây. Lưu ý rằng các đoạn mã dưới đây  sẽ không hoạt động được với phần mềm Adobe Acrobat thông dụng.

Một lưu ý khác nữa là trong công thức dưới đây ta sẽ sử dụng Early Binding để tham chiếu thông tin thay vì Late Binding.

Phiên bản thử nghiệm: Hàm thủ tục được thử nghiệm và đã chạy thành công trên Word 2003 cũng như PDFCreator phiên bản 0.9.3, trên nền Windows XP Pro (SP2). Nó hoàn toán có thể hoạt động bình thường trên phiên bản Word 2007 hoặc cao hơn.

Các bước chuẩn bị:

  • Khởi động Word lên và mở 2 cửa sổ soạn thảo mới
  • Điền các thông tin riêng biệt lên từng trang soạn thảo sao cho bạn có thể phân được được nội dung giữa chúng
  • Điền mã VBE vào, tạo một mô-đun mới cho từng cửa sổ soạn thảo và sao chép đoạn mã lệnh dưới đây vào
  • Thiết lập đường dẫn chứa tệp hoàn thiện sau khi thực hiện quá trình gộp này.
  • Đặt tham chiếu sang phần mềm PDFCreator
  • Chạy đoạn mã lệnh.

Sau khi đoạn mã được kích hoạt, bạn sẽ có 1 tệp PDF mới trong đó chứa toàn bộ nội dung của cả 2 trang soạn thảo, được sắp xếp theo thứ tự khởi động của từng trang.

Một số điểm cần lưu ý:

Trong quá trình xây dựng mô hình để chạy hàm thủ tục này, có một số điểm bạn cần lưu ý:

  • Chức năng In trong nền cần phải được tắt đi. Nếu không tắt chức năng này đi thì hàm thủ tục trên sẽ chạy theo 1 vòng lặp vô cực, cho đến khi nào đoạn mã được tắt hoàn toàn, khi đó nếu bạn chạy đoạn mã này thì nó vẫn sẽ hoàn tất như bình thường.
  • Các tài liệu dạng Word khi in theo tệp PDF thì sẽ nằm theo thứ tự đảo ngược lại, không giống với các tệp Excel. Điều đó có nghĩa là bạn cần phải thiết lập 1 vòng lặp theo hướng ngược lại, tức là sắp xếp tài liệu được mở gần đây nhất trước, rồi sau đó mới là các tài liệu theo trình tự cũ dần để sao cho tệp hoàn chỉnh mà ta nhận được sẽ ở đúng thứ tự của nó.

Đoạn mã lệnh: