Tôi muốn thêm chức năng vào báo cáo Access 2007 theo đó một bản sao của báo cáo PDF được tạo ra chỉ bằng một lần bấm nút. Tôi biết rằng có một OutputTo
vĩ mô mà có thể làm điều này cho tôi, nhưng nó không cho phép tôi để bao gồm các giá trị trường báo cáo như một phần của tên tập tin của PDF, cụ thể là:Làm cách nào để xuất báo cáo ở định dạng PDF, trong đó tên bao gồm các giá trị từ các trường?
[Client Organisations].Code + "-" + Clients.Code + "-" + Invoices_Code + "-" + Format([Invoice Date],"yyyy") + ".pdf"
Trong khi tôi đã thấy điều này MSDN thread và điều này SO question, tôi không thấy việc sử dụng các giá trị trường trong bất kỳ câu trả lời nào.
Tôi nghĩ mã VBA là con đường để đi, vì vậy tôi (không thành công) thử như sau:
Private Sub Create_PDF_Click()
DoCmd.OutputTo acOutputReport, , acFormatPDF, "" + [Client Organisations].Code
+ "-" + Clients.Code + "-" + Invoices_Code + "-" + Format([Invoice Date],"yyyy")
+ ".pdf", True
End Sub
Run-time error '2465':
Microsoft Office Access không thể tìm trường '|' được gọi trong biểu thức của bạn
Có ý tưởng nào không?
lỗi 'không thể tìm thấy trường' này thường xuất hiện khi có gì đó ở đâu đó trong thư viện: vấn đề phiên bản, thông số không được công nhận, v.v. Tôi đoán @jonH là đúng: bạn đang thiếu thứ gì đó bên ngoài VBA để có Báo cáo PDF được in. –
@Philippe: Macro hoạt động tốt, vấn đề là với việc VBA nhận ra các trường. – Zaid
trong trường hợp này hãy thử một vài 'debug.print' trong cửa sổ ngay lập tức và kiểm tra từng thông số của tên tệp của bạn để tìm lỗi nào trong số đó: ? debug.print [Tổ chức Khách hàng] .Code ? debug.print Clients.Code etc –