HomeTin học văn phòngCách chuyển file Excel sang PDF sử dụng VBA

Cách chuyển file Excel sang PDF sử dụng VBA

Nếu game thủ thao tác trên ứng dụng Excel, thực sự là chắn game thủ cần phround tạo những game thủ dạng tóm tắt thao tác, chẳng hạn như report lợi nhuận, hóa giậtn, tiến độ và những dự báo, nên xem. quý quý khách mặt hàng với biết tổng thể những tài liệu này với điểm chung gì ko? Chúng đều sử dụng định dạng file PDF, game thủ còn biết điểm chung gì khác? Các nhà quản trị thường rất thích file PDF!

cach chuyen file excel sang pdf su dung vba

Cách chuyển file Excel sang PDF sử dụng VBA

Chuyển đổi file Excel sang PDF bằng VBA

Trong nội dung bài viết này, Cửa Hàng chúng tôi sẽ hướng dẫn game thủ nhữngh sử dụng VBA Excel – viết tắt của Visual Basic for Applicátions, một tiếng nói của một dân tộc lập trình tích hợp trong Excel – để chuyển đổi tổng thể nội dung trong file Excel sang định dạng PDF. Bài hướng dẫn chuyển Excel sang PDF bao hàm: Chuyển ô tùy sắm sang PDF, Chuyển một game thủ dạngg (Table) sang PDF, Chuyển tổng thể game thủ dạngg sang file PDF riêng lẻ, Chuyển tổng thể game thủ dạngg tính (Spreadsheet) sang một file PDF, Chuyển game thủ dạngg tính biểu đồ sang PDF và Chuyển tiềm năng biểu đồ sang PDF.

Dưới đây, Cửa Hàng chúng tôi sẽ trình diễn từng macro tất nhiên một trong những mỗi chú thích, từ đó game thủ với thể tìm chúng nkhô hanh chóng, sao chép vào trình chỉnh sửa VBA của tôi và sử dụng.

Khi game thủ chạy một macro ngẫu nhiên, vỏ hộp thoại Save As sẽ xuất hiện và hỏi game thủ thích lưu file PDF vào thư mục nào trong máy. Tên mặc định bao hàm ngày tháng và dấu thời hạn (time stamp) lúc game thủ thực thi macro ở định dạng yyyymmdd_hhmmss (lần lượt là ngày tháng năm_giờ phút giây)

cach chuyen file excel sang pdf su dung vba

Dưới đấy là những macro:

Chuyển ô tùy sắm sang PDF (Print Selection To PDF)

Macro này sẽ chuyển đổi những ô game thủ đã sắm thành PDF. Nếu game thủ chỉ sắm một ô, macro VBA đủ thông mình để quan sát rằng với lẽ game thủ ko muốn chuyển một ô duy nhất vì thế nó sẽ khuyến nghị game thủ lựa sắm phạm vi ô muốn chuyển đổi:

cach chuyen file excel sang pdf su dung vba 2

Sub PrintSelectionToPDF()
‘SUBROUTINE: PrintSelectionToPDF
‘DEVELOPER: Taimienphi.vn
‘DESCRIPTION: Chuyển những ô được sắm sang PDF
Dim ThisRng As Range
Dim strfile As String
Dim myfile As Variant
If Selection.Count = một Then
Set ThisRng = Applicátion.InputBox(“Select a range”, “Get Range”, Type:=8)
Else
Set ThisRng = Selection
End If
‘Dấu nhắc thư mục lưu
strfile = “Selection” andamp; “_” _
andamp; Format(Now(), “yyyymmdd_hhmmss”) _
andamp; “.pdf”
strfile = ThisWorkbook.Path andamp; “” andamp; strfile
myfile = Applicátion.GetSaveAsFilename _
(InitialFileName:=strfile, _
FileFilter:=”PDF Files (*.pdf), *.pdf”, _
Title:=”Lựa sắm thư mục và tên file lưu thành PDF”)
If myfile “False” Then ‘save as PDF
ThisRng.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
myfile, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
Else
MsgBox “Không với file được sắm. Không thể lưu file PDF”, vbOKOnly, “Không với file được sắm”
End If
End Sub
 

Sau lúc sắm phạm vi ô và nhấn OK, trên screen sẽ xuất hiện vỏ hộp thoại để game thủ sắm thư mục muốn lưu file PDF. Chương trình sẽ tự động sắm thời hạn và ngày tháng từ đồng hồ đeo tay khối khối VPS và cyếu vào tên file.

Chuyển một game thủ dạngg sang PDF (Print One Table To PDF)

Rất nhiều người tiêu dùng Excel tốt lựa sắm lưu data của họ vào game thủ dạngg. Macro này được sử dụng để chuyển đổi game thủ dạngg game thủ đã sắm sang file PDF. Khi game thủ chạy marco, chương trình sẽ yêu cầu game thủ đặt tên cho game thủ dạngg muốn lưu.

cach chuyen file excel sang pdf su dung vba 3

Sub PrintTableToPDF()
‘SUBROUTINE: PrintTableToPDF
‘DEVELOPER: Taimienphi.vn
‘DESCRIPTION: Chuyển đổi game thủ dạngg game thủ sắm sang file PDF
Dim strfile As String
Dim myfile As Variant
Dim strTable As String, r As Range
Applicátion.ScreenUpdating = False
‘Nhập tên game thủ dạngg muốn lưu
strTable = InputBox(“Tên game thủ dạngg game thủ thích lưu là gì?”, “‘Nhập tên game thủ dạngg”) ‘Bảng muốn lưu
If Trim(strTable) = “” Then Exit Sub
‘Dấu nhắc thư mục lưu
strfile = strTable andamp; “_” _
andamp; Format(Now(), “yyyymmdd_hhmmss”) _
andamp; “.pdf”
strfile = ThisWorkbook.Path andamp; “” andamp; strfile
myfile = Applicátion.GetSaveAsFilename _
(InitialFileName:=strfile, _
FileFilter:=”PDF Files (*.pdf), *.pdf”, _
Title:=”Lựa sắm thư mục và tên file lưu thành PDF”)
If myfile “False” Thì ‘lưu thành PDF
Range(strTable).ExportAsFixedFormat Type:=xlTypePDF, Filename:=myfile, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
Else
MsgBox “Không với file được sắm. Không thể lưu file PDF”, vbOKOnly, “Không với file được sắm”
End If
Applicátion.DisplayAlerts = False
LetsContinue:
With Applicátion
.ScreenUpdating = True
.DisplayAlerts = True
End With
Exit Sub
End Sub

Sau lúc game thủ nhập tên game thủ dạngg và nhấn OK, vỏ hộp thoại sẽ xuất hiện để game thủ lựa sắm thư mục muốn lưu file PDF. Chương trình sẽ tự động sắm thời hạn và ngày tháng từ đồng hồ đeo tay khối khối VPS và cyếu vào tên file.

Chuyển tổng thể game thủ dạngg sang file PDF riêng lẻ (Print All Tables To Separate PDFs)

Nếu game thủ dạngg tính bao hàm nhiều game thủ dạngg trong những lúc game thủ cần lưu từng game thủ dạngg thành một file PDF riêng, game thủ với thể chạy mã VBA này.

Khi game thủ chạy marco này, screen sẽ xuất hiện vỏ hộp thoại yêu cầu game thủ lựa sắm thư mục muốn lưu file PDF.

cach chuyen file excel sang pdf su dung vba 4

Sau lúc game thủ sắm xong thư mục, macro sẽ lưu từng game thủ dạngg vào trong một file PDF riêng bằng tên game thủ dạngg xuất hiện trong tiêu đề file PDF.

Sub PrintAllTablesToPDFs()
‘SUBROUTINE: PrintAllTablesToPDFs
‘DEVELOPER: Taimienphi.vn
‘DESCRIPTION: Chuyển từng game thủ dạngg trong game thủ dạngg tính thành một file PDF riêng
Dim strTables() As String
Dim strfile As String
Dim ch As Object, sh As Worksheet
Dim icount As Integer
Dim myfile As Variant
Dim tbl As ListObject
Dim sht As Worksheet
With Applicátion.FileDialog(msoFileDialogFolderPicker)
.Title = “quý quý khách mặt hàng muốn lưu file PDF ở thư mục nào?”
.ButtonName = “Lưu ở đây”
.InitialFileName = ThisWorkbook.Path
If .Show = -một Then ‘ if OK is pressed
sthư mục = .SelectedItems(một)
Else
End
End If
End With
For Each sht In ThisWorkbook.Worksheets
For Each tbl In sht.ListObjects
myfile = ThisWorkbook.Name andamp; “” andamp; tbl.Name andamp; “” _
andamp; Format(Now(), “yyyymmdd_hhmmss”) _
andamp; “.pdf”
myfile = sthư mục andamp; “” andamp; myfile
sht.Range(tbl.Name).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
myfile, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
Next tbl
Next sht
End Sub
 

Chuyển tổng thể game thủ dạngg tính sang một file PDF (Print All Sheets To One PDF)

Trong nhiều trường hợp, người tiêu dùng Excel cần sao chép hầu như game thủ dạngg tính vào file PDF. File PDF này được chuyển đổi để lưu trữ trên vi phim microfiche. Nếu game thủ cũng rơi vào trường hợp tương tự, macro VBA này sẽ hỗ trợ game thủ tự động chuyển tổng thể game thủ dạngg tính sang một file PDF.

Sub PrintAllSheetsToPDF()
‘SUBROUTINE: PrintAllSheetsToPDF
‘DEVELOPER: Taimienphi.vn
‘DESCRIPTION: Kết hợp tổng thể game thủ dạngg tính vào trong một file PDF
Dim strSheets() As String
Dim strfile As String
Dim sh As Worksheet
Dim icount As Integer
Dim myfile As Variant
‘Save Chart Sheet names to an Array
For Each sh In ActiveWorkbook.Worksheets
If sh.Visible = xlSheetVisible Then
ReDim Preserve strSheets(icount)
strSheets(icount) = sh.Name
icount = icount + một
End If
Next sh
If icount = 0 Then ‘No phụ vươngrts found. Punch error
MsgBox “Không thể tạo file PDF vì ko tìm thđó game thủ dạngg tính.”, , “Không tìm thđó game thủ dạngg tính”
Exit Sub
End If
‘Dấu nhắc thư mục lưu
strfile = “Sheets” andamp; “_” _
andamp; Format(Now(), “yyyymmdd_hhmmss”) _
andamp; “.pdf”
strfile = ThisWorkbook.Path andamp; “” andamp; strfile
myfile = Applicátion.GetSaveAsFilename _
(InitialFileName:=strfile, _
FileFilter:=”PDF Files (*.pdf), *.pdf”, _
Title:=”Lựa sắm thư mục và tên file lưu thành PDF”)
If myfile “False” Then ‘save as PDF
ThisWorkbook.Sheets(strSheets).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
myfile, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
Else
MsgBox “Không với file được sắm. Không thể lưu file PDF”, vbOKOnly, “Không với file được sắm”
End If
End Sub
 

Chuyển game thủ dạngg tính biểu đồ sang PDF (Print Chart Sheets To PDF)

Macro này chuyển đổi tổng thể game thủ dạngg tính biểu đồ thành sang file PDF – nhưng ko chuyển những tiềm năng (object) biểu đồ, với nghĩa là chỉ chuyển đổi biểu đồ với tab riêng trong danh sách tab game thủ dạngg tính:

cach chuyen file excel sang pdf su dung vba 5

Sub PrintChartSheetsToPDF()
‘SUBROUTINE: PrintChartSheetsToPDF
‘DEVELOPER: Taimienphi.vn
‘DESCRIPTION: Kết hợp tổng thể sheet biểu đồ vào trong một file PDF
Dim strSheets() As String
Dim strfile As String
Dim ch As Object, sh As Worksheet
Dim icount As Integer
Dim myfile As Variant
‘Save Chart Sheet names to an Array
For Each ch In ActiveWorkbook.Charts
ReDim Preserve strSheets(icount)
strSheets(icount) = ch.Name
icount = icount + một
Next ch
If icount = 0 Then ‘No phụ vươngrts found. Punch error
MsgBox “Không thể tạo file PDF vì ko tìm thđó sheet biểu đồ.”, , “Không tìm thđó sheet biểu đồ”
Exit Sub
End If
‘Dấu nhắc thư mục lưu
strfile = “Charts” andamp; “_” _
andamp; Format(Now(), “yyyymmdd_hhmmss”) _
andamp; “.pdf”
strfile = ThisWorkbook.Path andamp; “” andamp; strfile
myfile = Applicátion.GetSaveAsFilename _
(InitialFileName:=strfile, _
FileFilter:=”PDF Files (*.pdf), *.pdf”, _
Title:=”Lựa sắm thư mục và tên file lưu thành PDF”)
If myfile “False” Then ‘save as PDF
ThisWorkbook.Sheets(strSheets).Select
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
myfile, Quality:=xlQualityStandard, IncludeDocProperties:=True, _
IgnorePrintAreas:=False, OpenAfterPublish:=True
Else
MsgBox “Không với file được sắm. Không thể lưu file PDF”, vbOKOnly, “Không với file được sắm”
End If
End Sub

Chuyển tiềm năng biểu đồ sang PDF (Print Chart Objects To PDF)

Macro này sẽ lưu tổng thể biểu đồ thường thì – tiềm năng biểu đồ – vào trong một file PDF riêng. Bất kể biểu đồ nằm tại game thủ dạngg tính (worksheet) nào đều được lưu vào file PDF. Mỗi biểu đồ sẽ nằm tại một trang riêng trong file PDF .

Sub PrintChartsObjectsToPDF()
‘SUBROUTINE: PrintChartsObjectsToPDF
‘DEVELOPER: Taimienphi.vn
‘DESCRIPTION: Kết hợp tổng thể tiềm năng biểu đồ vào trong một file PDF
Dim ws As Worksheet, wsTemp As Worksheet
Dim chrt As ChartObject
Dim tp As Long
Dim strfile As String
Dim myfile As Variant
Applicátion.ScreenUpdating = False
Set wsTemp = Sheets.Add
tp = một0
With wsTemp
For Each ws In ActiveWorkbook.Worksheets
If ws.Name = wsTemp.Name Then GoTo nextws:
For Each chrt In ws.ChartObjects
chrt.Copy
wsTemp.Range(“Amột”).PasteSpecial
Selection.Top = tp
Selection.Left = 5
If Selection.TopLeftCell.Row andgt; một Then
ActiveSheet.Rows(Selection.TopLeftCell.Row).PageBreak = xlPageBreakManual
End If
tp = tp + Selection.Height + 50
Next
nextws:
Next ws
End With
‘Dấu nhắc thư mục lưu
strfile = “Charts” andamp; “_” _
andamp; Format(Now(), “yyyymmdd_hhmmss”) _
andamp; “.pdf”
strfile = ActiveWorkbook.Path andamp; “” andamp; strfile
myfile = Applicátion.GetSaveAsFilename _
(InitialFileName:=strfile, _
FileFilter:=”PDF Files (*.pdf), *.pdf”, _
Title:=”Lựa sắm thư mục và tên file lưu thành PDF”)
If myfile False Then ‘save as PDF
wsTemp.ExportAsFixedFormat Type:=xlTypePDF, Filename:=myfile, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
‘Else
‘ MsgBox “Không với file được sắm. Không thể lưu file PDF”, vbOKOnly, “Không với file được sắm”
End If
Applicátion.DisplayAlerts = False
wsTemp.Delete
With Applicátion
.ScreenUpdating = True
.DisplayAlerts = True
End With
Exit Sub
End Sub

https://thuthuat.taimienphi.vn/cach-chuyen-file-excel-sang-pdf-sua-dung-vba-44795n.aspx
Ngoài ra, game thủ cũng nên tìm hiểu thêm nhữngh lưu vba để sử dụng trong trường hợp quan trọng, xem yếu tố hướng dẫn lưu vba, lưu Macro trong Excel trên Taimienphi.vn.

Nguyễn Sơnhttps://iotstartup.vn/
Mình là Nguyễn Sơn, một freelancer lập trình web. MÌnh có đam mê viết blog để chia sẻ các kiến thức về máy tính đến quý độc giả. Mình hi vọng với những kiến thức mà mình chia sẻ sẽ giúp ích được các bạn. Cám ơn các bạn đã ghé xem blog
RELATED ARTICLES

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Bài viết hay nhất