VBA - xuất ra file pdf

Liên hệ QC

giangintem

Thành viên mới
Tham gia
19/4/11
Bài viết
22
Được thích
4
Kính gửi các Anh/Chị

Mình mới tìm hiểu về vba, mình đang làm xuất phiếu lương ra file pdf nhưng khi xuất ra file pdf thì không đọc được. xin chỉ ra lỗi sai và hoàn thiện đoạn code. Cám ơn cả nhà
 

File đính kèm

  • Luong24.12.xlsm
    19.7 KB · Đọc: 25
Kính gửi các Anh/Chị

Mình mới tìm hiểu về vba, mình đang làm xuất phiếu lương ra file pdf nhưng khi xuất ra file pdf thì không đọc được. xin chỉ ra lỗi sai và hoàn thiện đoạn code. Cám ơn cả nhà
Trong file bạn có cái code nào tạo file pdf đâu mà chỉ ra chỗ sai?
 
Upvote 0
Trong file có đó bạn, đoạn code như sau:

Sub taods()
Dim i As Integer

Application.DisplayAlerts = False
Application.ScreenUpdating = False

i = 5

With ThisWorkbook.Sheets("Data")
While (.Cells(i, 3) <> "")

ThisWorkbook.Sheets("Form").Cells(3, 5) = .Cells(i, 3)

ThisWorkbook.Sheets("Form").Copy

ActiveWorkbook.SaveAs ThisWorkbook.Path & "\Danh Sach\" & .Cells(i, 3) & "_" & .Cells(i, 4) & ".pdf"
ActiveWorkbook.Close

i = i + 1
Wend

End With

MsgBox "!!!Hoan Thanh!!!"

Application.ScreenUpdating = True
Application.ScreenUpdating = True


End Sub
 
Upvote 0
Trong file có đó bạn, đoạn code như sau:

Sub taods()
Dim i As Integer

Application.DisplayAlerts = False
Application.ScreenUpdating = False

i = 5

With ThisWorkbook.Sheets("Data")
While (.Cells(i, 3) <> "")

ThisWorkbook.Sheets("Form").Cells(3, 5) = .Cells(i, 3)

ThisWorkbook.Sheets("Form").Copy

ActiveWorkbook.SaveAs ThisWorkbook.Path & "\Danh Sach\" & .Cells(i, 3) & "_" & .Cells(i, 4) & ".xlsx", Password:=.Cells(i, 13)
ActiveWorkbook.Close

i = i + 1
Wend

End With

MsgBox "!!!Hoan Thanh!!!"

Application.ScreenUpdating = True
Application.ScreenUpdating = True


End Sub
Tôi chép code trong file ra cho bạn thấy. Bạn tải về xem lại file đi, xem tôi có nói sai không?

Sub taods()
Dim i As Integer

'Bo qua canh bao va nhap nhay khi chay chuong trinh
Application.DisplayAlerts = False
Application.ScreenUpdating = False

'Gán gia tri dau tien
i = 5

'Quét tung nhan vien 1
With ThisWorkbook.Sheets("Data")
While (.Cells(i, 3) <> "")
'Gán ma cho tung nhan vien
ThisWorkbook.Sheets("Form").Cells(3, 5) = .Cells(i, 3)

'Trich xuat shhet Form ra file moi
ThisWorkbook.Sheets("Form").Copy

'Luu file sau khi xuat vao folder danh sach va dat pass
ActiveWorkbook.SaveAs ThisWorkbook.Path & "\Danh Sach\" & .Cells(i, 3) & "_" & .Cells(i, 4) & ".xlsx", Password:=.Cells(i, 13)
ActiveWorkbook.Close

i = i + 1
Wend

End With

'Hien thong bao ket thuc chuong trinh
MsgBox "!!!Hoan Thanh!!!"

Application.ScreenUpdating = True
Application.ScreenUpdating = True


End Sub
 
Upvote 0
Kính gửi các Anh/Chị

Mình mới tìm hiểu về vba, mình đang làm xuất phiếu lương ra file pdf nhưng khi xuất ra file pdf thì không đọc được. xin chỉ ra lỗi sai và hoàn thiện đoạn code. Cám ơn cả nhà
Gửi bạn đoạn code xuất file PDF
Mã:
Sub XuatPDF()
Dim Code$
Code = Sheets("Form").Range("E3").Value
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    ThisWorkbook.Path & "\" & Code & ".pdf", _
    Quality:=xlQualityStandard, IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, OpenAfterPublish:=False
End Sub
 

File đính kèm

  • Luong24.12.xlsm
    31.1 KB · Đọc: 29
Upvote 0
Đúng rồi, mình quên sửa lại. Mình đã sửa lại đoạn code nhưng vẫn không chạy được. Nhờ Bạn sửa lại. Cám ơn nhiều
 

File đính kèm

  • Luong24.12.xlsm
    16.6 KB · Đọc: 15
Upvote 0
Trong file có đó bạn, đoạn code như sau:

Sub taods()
Dim i As Integer

Application.DisplayAlerts = False
Application.ScreenUpdating = False

i = 5

With ThisWorkbook.Sheets("Data")
While (.Cells(i, 3) <> "")

ThisWorkbook.Sheets("Form").Cells(3, 5) = .Cells(i, 3)

ThisWorkbook.Sheets("Form").Copy

ActiveWorkbook.SaveAs ThisWorkbook.Path & "\Danh Sach\" & .Cells(i, 3) & "_" & .Cells(i, 4) & ".pdf"
ActiveWorkbook.Close

i = i + 1
Wend

End With

MsgBox "!!!Hoan Thanh!!!"

Application.ScreenUpdating = True
Application.ScreenUpdating = True


End Sub
Bạn chạy thử code.
Bài đã được tự động gộp:

Đúng rồi, mình quên sửa lại. Mình đã sửa lại đoạn code nhưng vẫn không chạy được. Nhờ Bạn sửa lại. Cám ơn nhiều
Bạn chạy file kèm ở bài này nhé
 

File đính kèm

  • Luong24.12_giangintem.xlsm
    21.4 KB · Đọc: 31
Lần chỉnh sửa cuối:
Upvote 0
Bạn ơi, mình sử dụng file của Bạn được nhưng khi áp vào file thực tế cứ báo lỗi hoài, xem lại giúp mình, cám ơn Bạn nhiều nhé
1608874698438.png
 

File đính kèm

  • C.Luong T12.xlsm
    580 KB · Đọc: 15
Upvote 0
Upvote 0
Bạn vào code của This Workbook vô hiệu hóa sự kiện Before_Print đi. Tôi không biết lý do và ai đặt sự kiện này để làm gì nhưng nó là lý do gây lỗi.

Hoặc bạn tải file này về. Tôi đã vô hiệu nó rồi.
 

File đính kèm

  • C.Luong T12_giangintem.xlsm
    579.8 KB · Đọc: 27
Upvote 0
Web KT
Back
Top Bottom