Cám ơn bạn, Mình cứ tưởng là nó phân biệt và đã in được.
Tiện thể cho mình hỏi thêm.
Mình có filename Y:\DEPT\INVOICING\PO\ach-12v35_5656846.pdf
Nhưng mình chỉ có dữ liệu là : 12v35 mình không thể in bằng đoạn code trên.
Mong bạn giúp đỡ !
Cám ơn bạn, Mình cứ tưởng là nó phân biệt và đã in được.
Tiện thể cho mình hỏi thêm.
Mình có filename Y:\DEPT\INVOICING\PO\ach-12v35_5656846.pdf
Nhưng mình chỉ có dữ liệu là : 12v35 mình không thể in bằng đoạn code trên.
Mong bạn giúp đỡ !
Nếu bạn muốn in PDF và chỉ có "12v35" thì vd.
Mã:
Sub test()
Dim path As String, filename As String
path = ThisWorkbook.Worksheets("Sheet1").Range("H1").Value ' gia su duong dan toi thu muc (co "\" o cuoi) duoc nhap o H1
filename = path & "*-" & "12v35" & "_*." & "pdf" ' duong dan day du can kiem tra
filename = Dir(filename) ' chi ten tap tin neu ton tai
If filename <> "" Then
With CreateObject("Shell.Application")
.Namespace(0).ParseName(path & filename).InvokeVerb ("Print")
End With
End If
End Sub
Lưu ý:
- code trên chỉ là ví dụ, tự chỉnh sửa cho phù hợp với nhu cầu của mình. Nếu không biết chỉnh sửa thì phải đínhkèm tập tin và mô tả kỹ.
- đường dẫn tới thư mục chứa các tập tin phải nhập vào H1 của sheet Sheet1. Thay "Sheet1" bằng tên sheet của mình (tên ngoài trang tính chứ không phải tên trong VBE). Hoặc sửa thành path = WsDaTa1.Range("H1").Value. Tức phải có vd.
H1 = Y:\DEPT\INVOICING\PO\ (có ký tự \ ở cuối)
- nếu có nhiều PDF cùng chứa đoạn "12v35" thì tập tin khớp đầu tiên sẽ được in.
- Do code dùng hàm DIR nên đường dẫn tới tập tin không được phép có ký tự unicode, vd. ký tự Việt.
Vấn đề in toàn bộ các tập tin trong một thư mục nào đó thì lại là vấn đề HOÀN TOÀN khác. Tìm tất cả rồi in lần lượt thôi. Code tìm tất cả các tập tin trong thư mục thì có đầy trên GPE, miễn hỏi.
Nếu bạn muốn in PDF và chỉ có "12v35" thì vd.
Mã:
Sub test()
Dim path As String, filename As String
path = ThisWorkbook.Worksheets("Sheet1").Range("H1").Value ' gia su duong dan toi thu muc (co "\" o cuoi) duoc nhap o H1
filename = path & "*-" & "12v35" & "_*." & "pdf" ' duong dan day du can kiem tra
filename = Dir(filename) ' chi ten tap tin neu ton tai
If filename <> "" Then
With CreateObject("Shell.Application")
.Namespace(0).ParseName(path & filename).InvokeVerb ("Print")
End With
End If
End Sub
Lưu ý:
- code trên chỉ là ví dụ, tự chỉnh sửa cho phù hợp với nhu cầu của mình. Nếu không biết chỉnh sửa thì phải đínhkèm tập tin và mô tả kỹ.
- đường dẫn tới thư mục chứa các tập tin phải nhập vào H1 của sheet Sheet1. Thay "Sheet1" bằng tên sheet của mình (tên ngoài trang tính chứ không phải tên trong VBE). Hoặc sửa thành path = WsDaTa1.Range("H1").Value. Tức phải có vd.
H1 = Y:\DEPT\INVOICING\PO\ (có ký tự \ ở cuối)
- nếu có nhiều PDF cùng chứa đoạn "12v35" thì tập tin khớp đầu tiên sẽ được in.
- Do code dùng hàm DIR nên đường dẫn tới tập tin không được phép có ký tự unicode, vd. ký tự Việt.
Vấn đề in toàn bộ các tập tin trong một thư mục nào đó thì lại là vấn đề HOÀN TOÀN khác. Tìm tất cả rồi in lần lượt thôi. Code tìm tất cả các tập tin trong thư mục thì có đầy trên GPE, miễn hỏi.