Export những sheet được chọn sang pdf

Liên hệ QC

diemngoc.ts

Thành viên mới
Tham gia
1/8/18
Bài viết
16
Được thích
0
Hi all,

Mình thử một đoạn code để có thể xuất tất cả các sheet có tên khác tên là "Name" và "Dia chi" sang PDF như bên dưới, nhưng lại gặp lỗi 400, mong mọi người giúp đỡ ạ. Cảm ơn mọi người.

Sub Print_Report()
Dim Sh As Worksheet, Check As Boolean
Check = True
For Each Sh In ThisWorkbook.Worksheets
If Sh.Name <> "Name" And (Sh.Name <> "Dia chi) Then Sh.Select Check: Check = False
Next
MsgBox ActiveWindow.SelectedSheets.Count
If Sh Then
Sh.ExportAsFixedFormat xlTypePDF, ThisWorkbook.FullName
End If

End Sub
 

giaiphap

==(^o^)==
Tham gia
12/3/07
Bài viết
5,501
Được thích
5,514
Donate (Momo)
Donate
Giới tính
Nam
Hi all,

Mình thử một đoạn code để có thể xuất tất cả các sheet có tên khác tên là "Name" và "Dia chi" sang PDF như bên dưới, nhưng lại gặp lỗi 400, mong mọi người giúp đỡ ạ. Cảm ơn mọi người.

Sub Print_Report()
Dim Sh As Worksheet, Check As Boolean
Check = True
For Each Sh In ThisWorkbook.Worksheets
If Sh.Name <> "Name" And (Sh.Name <> "Dia chi) Then Sh.Select Check: Check = False
Next
MsgBox ActiveWindow.SelectedSheets.Count
If Sh Then
Sh.ExportAsFixedFormat xlTypePDF, ThisWorkbook.FullName
End If

End Sub
Thử lại code này.
Mã:
Sub Print_Report()
Dim Sh As Worksheet, Check As Boolean
Check = True
For Each Sh In ThisWorkbook.Worksheets
    If (Sh.Name <> "Name") And (Sh.Name <> "Dia chi") Then
        Sh.Select Check: Check = False
    End If
Next

If Not Check Then
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\GPE.pdf"
    MsgBox "Da thuc hien xong"
End If
End Sub
 

diemngoc.ts

Thành viên mới
Tham gia
1/8/18
Bài viết
16
Được thích
0
Cảm ơn bạn đã pản hồi,

Nhưng mình chạy code vẫn báo lỗi như thế này, bạn có thể giúp mình fix được không. Cảm ơn bạn.
1638426228641.png
1638426272030.png
 

BuiQuangThuan

❆❆❆❆❆❆❆❆❆❆❆
Tham gia
17/12/10
Bài viết
1,000
Được thích
704
Giới tính
Nam
,.....,...............
 
Lần chỉnh sửa cuối:

Mutants Men

Thành viên thường trực
Tham gia
30/12/15
Bài viết
382
Được thích
256
Cảm ơn bạn đã pản hồi,

Nhưng mình chạy code vẫn báo lỗi như thế này, bạn có thể giúp mình fix được không. Cảm ơn bạn.
View attachment 269873
View attachment 269874
thử này xem sao bạn
Mã:
Sub Print_Report()
Dim Sh As Worksheet, Check As Boolean
Check = True
For Each Sh In ActiveWorkbook.Worksheets
    If (Sh.Name <> "Name") And (Sh.Name <> "Dia chi") Then
        Sh.Select Check: Check = False
    End If
Next

If Not Check Then
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, filename:=ThisWorkbook.path & "\GPE.pdf"
    MsgBox "Da thuc hien xong"
End If
End Sub
 

diemngoc.ts

Thành viên mới
Tham gia
1/8/18
Bài viết
16
Được thích
0
Cảm ơn hai bạn đã giúp, nhưng sao mình vẫn bị lỗi ở chỗ Sh.Select (dù có xóa hay không xóa chứ Check)nhỉ, mặc dù tất cả các sheet khác tên "Name" và "Dia chi" đã được chọn, nhưng không export được.
1638436429044.png
 

befaint

|||||||||||||
Tham gia
6/1/11
Bài viết
12,736
Được thích
16,090
if sh.Visible=xlSheetVisible then
Sh.Select Check: Check = False
end if
 

BuiQuangThuan

❆❆❆❆❆❆❆❆❆❆❆
Tham gia
17/12/10
Bài viết
1,000
Được thích
704
Giới tính
Nam
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & ActiveWorkbook.Name
MsgBox "Done!!!"
Mình thêm vào nhưng không in ra tên file được, bạn có thể hướng dẫn thêm cho mình không?
Thử code này coi:
Mã:
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path &"\" & ActiveWorkbook.Name & ".pdf"
 

diemngoc.ts

Thành viên mới
Tham gia
1/8/18
Bài viết
16
Được thích
0
Cảm ơn mọi người rất nhiều. Mình đã làm được rồi ạ.
 

Mutants Men

Thành viên thường trực
Tham gia
30/12/15
Bài viết
382
Được thích
256
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & ActiveWorkbook.Name
MsgBox "Done!!!"
Mình thêm vào nhưng không in ra tên file được, bạn có thể hướng dẫn thêm cho mình không?
đây bạn nhé
Mã:
ThisWorkbook.Path & "\" & left(ThisWorkbook.Name,instr(1,ThisWorkbook.Name,".")-1)
đâu phải người ta cho cái gì ráp vô cũng đúng đâu.
code này
Mã:
ThisWorkbook.Name
nó ra kết quả là <tên file>.<đuôi mở rộng>, cần cắt bỏ cái đuôi mở rộng đó, không cần &".PDF" ở phía sau nữa , cái này
Mã:
Type:=xlTypePDF
nó đã định dạng file là pdf rồi
 
Web KT
Top Bottom