Không biết bạn này định xin ai và chất lượng file pdf cụ thể như thế nào vì không phải file pdf nào cũng có thể copy sang excel mà vẫn giữ nguyên được chất lượng như ban đầu.Xin Code để mở File PDF rồi copy dữ liệu vào Exel.
Mạnh dạn đề xuất phần mềm Abby. Còn code thì chắc phải dùng Ai ạThành thật xin lỗi vì soạn thảo không được đầy đủ. Tôi xin nhờ anh em diễn đàn giúp: code để mở file PDF (được tạo từ phần mềm hóa đơn tài chính), sau đó copy sang Excel để tổng hợp dữ liệu cần thiết. Mong anh em giúp đỡ. Xin chân thành cảm ơn.
Bạn nên đưa một file pdf và một file excel có kết quả mong muốn lên thì sẽ dễ hình dung hơn.code để mở file PDF (được tạo từ phần mềm hóa đơn tài chính), sau đó copy sang Excel để tổng hợp dữ liệu cần thiết.
Cách này bị lỗi nhiều, không đọc đượcDùng thử cách mở file pdf bằng Word rồi copy toàn bộ, paste vào excel, khỏi dùng phần mềm của bên thứ 3.
Bạn muốn xin code mà không cấp dữ liệu đầu vào và ví dụ kết quả đầu ra thì người viết code lấy gì để thử. Đành thôi vậy.Bạn cứ cho xin mã để copy pdf vào excel
Bạn cứ cho xin mã để copy pdf vào excel
Sub ImportPDFtoExcelViaWord()
Dim wdApp As Object
Dim wdDoc As Object
Dim filePath As String
Dim pdfText As String
' Đường dẫn file PDF
filePath = "C:\DuongDan\File.pdf"
On Error Resume Next
' Kiểm tra và mở Word
Set wdApp = GetObject(, "Word.Application")
If wdApp Is Nothing Then
Set wdApp = CreateObject("Word.Application")
End If
On Error GoTo 0
If wdApp Is Nothing Then
MsgBox "Không thể khởi động Word.", vbCritical
Exit Sub
End If
wdApp.Visible = False
' Mở PDF bằng Word
Set wdDoc = wdApp.Documents.Open(filePath, False, True, False, , , , , , , , True)
' Lấy toàn bộ nội dung PDF dưới dạng văn bản
pdfText = wdDoc.Content.Text
' Đưa nội dung vào Excel - ví dụ ghi vào ô A1
ThisWorkbook.Sheets(1).Range("A1").Value = pdfText
' Đóng Word
wdDoc.Close False
wdApp.Quit
' Giải phóng đối tượng
Set wdDoc = Nothing
Set wdApp = Nothing
MsgBox "Đã nhập nội dung PDF vào Excel thành công!"
End Sub
Kết quả sau khi tò mò chạy thử.Mã:Sub ImportPDFtoExcelViaWord() Dim wdApp As Object Dim wdDoc As Object Dim filePath As String Dim pdfText As String ' Đường dẫn file PDF filePath = "C:\DuongDan\File.pdf" On Error Resume Next ' Kiểm tra và mở Word Set wdApp = GetObject(, "Word.Application") If wdApp Is Nothing Then Set wdApp = CreateObject("Word.Application") End If On Error GoTo 0 If wdApp Is Nothing Then MsgBox "Không thể khởi động Word.", vbCritical Exit Sub End If wdApp.Visible = False ' Mở PDF bằng Word Set wdDoc = wdApp.Documents.Open(filePath, False, True, False, , , , , , , , True) ' Lấy toàn bộ nội dung PDF dưới dạng văn bản pdfText = wdDoc.Content.Text ' Đưa nội dung vào Excel - ví dụ ghi vào ô A1 ThisWorkbook.Sheets(1).Range("A1").Value = pdfText ' Đóng Word wdDoc.Close False wdApp.Quit ' Giải phóng đối tượng Set wdDoc = Nothing Set wdApp = Nothing MsgBox "Đã nhập nội dung PDF vào Excel thành công!" End Sub
Bạn thử tham khảo code này xem sao, mình chưa chạy thử. Nguồn Grok
Bạn chỉ có một dãy số thì như vậy, trên hoá đơn có thêm cả ký tự là chữ thì kết quả khác ngay.Anh làm em cũng tò mò chạy thử, nhưng kết quả thì thành công anh ạ
Vâng đúng là thế anh ạ, nhưng bạn chủ thớt hỏi đến đâu thì ta trả lời đến đó vậyBạn chỉ có một dãy số thì như vậy, trên hoá đơn có thêm cả ký tự là chữ thì kết quả khác ngay.