Làm cách nào để lưu trang tính dưới dạng tệp PDF và gửi qua email dưới dạng tệp đính kèm thông qua Outlook?
Trong một số trường hợp, bạn có thể cần gửi trang tính dưới dạng tệp PDF thông qua Outlook. Thông thường, bạn phải lưu trang tính theo cách thủ công dưới dạng tệp PDF, sau đó tạo một email mới với tệp PDF này dưới dạng tệp đính kèm trong Outlook của bạn và cuối cùng là gửi nó. Để đạt được nó theo cách thủ công từng bước rất tốn thời gian. Trong bài viết này, chúng tôi sẽ hướng dẫn bạn cách nhanh chóng lưu trang tính dưới dạng tệp PDF và gửi tự động dưới dạng tệp đính kèm thông qua Outlook trong Excel.
Lưu trang tính dưới dạng tệp PDF và gửi qua email dưới dạng tệp đính kèm với mã VBA
Lưu trang tính dưới dạng tệp PDF và gửi qua email dưới dạng tệp đính kèm với mã VBA
Bạn có thể chạy mã VBA dưới đây để tự động lưu trang tính đang hoạt động dưới dạng tệp PDF, sau đó gửi qua email dưới dạng tệp đính kèm thông qua Outlook. Hãy làm như sau.
1. Mở trang tính bạn sẽ lưu dưới dạng PDF và gửi, sau đó nhấn Khác + F11 các phím đồng thời để mở Microsoft Visual Basic cho các ứng dụng cửa sổ.
2. bên trong Microsoft Visual Basic cho các ứng dụng cửa sổ, nhấp Chèn > Mô-đun. Sau đó sao chép và dán mã VBA bên dưới vào Mã cửa sổ. Xem ảnh chụp màn hình:
Mã VBA: Lưu trang tính dưới dạng tệp PDF và gửi qua email dưới dạng tệp đính kèm
Sub Saveaspdfandsend()
Dim xSht As Worksheet
Dim xFileDlg As FileDialog
Dim xFolder As String
Dim xYesorNo As Integer
Dim xOutlookObj As Object
Dim xEmailObj As Object
Dim xUsedRng As Range
Set xSht = ActiveSheet
Set xFileDlg = Application.FileDialog(msoFileDialogFolderPicker)
If xFileDlg.Show = True Then
xFolder = xFileDlg.SelectedItems(1)
Else
MsgBox "You must specify a folder to save the PDF into." & vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Must Specify Destination Folder"
Exit Sub
End If
xFolder = xFolder + "\" + xSht.Name + ".pdf"
'Check if file already exist
If Len(Dir(xFolder)) > 0 Then
xYesorNo = MsgBox(xFolder & " already exists." & vbCrLf & vbCrLf & "Do you want to overwrite it?", _
vbYesNo + vbQuestion, "File Exists")
On Error Resume Next
If xYesorNo = vbYes Then
Kill xFolder
Else
MsgBox "if you don't overwrite the existing PDF, I can't continue." _
& vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Exiting Macro"
Exit Sub
End If
If Err.Number <> 0 Then
MsgBox "Unable to delete existing file. Please make sure the file is not open or write protected." _
& vbCrLf & vbCrLf & "Press OK to exit this macro.", vbCritical, "Unable to Delete File"
Exit Sub
End If
End If
Set xUsedRng = xSht.UsedRange
If Application.WorksheetFunction.CountA(xUsedRng.Cells) <> 0 Then
'Save as PDF file
xSht.ExportAsFixedFormat Type:=xlTypePDF, Filename:=xFolder, Quality:=xlQualityStandard
'Create Outlook email
Set xOutlookObj = CreateObject("Outlook.Application")
Set xEmailObj = xOutlookObj.CreateItem(0)
With xEmailObj
.Display
.To = ""
.CC = ""
.Subject = xSht.Name + ".pdf"
.Attachments.Add xFolder
If DisplayEmail = False Then
'.Send
End If
End With
Else
MsgBox "The active worksheet cannot be blank"
Exit Sub
End If
End Sub
3. Nhấn nút F5 phím để chạy mã. bên trong Xem hộp thoại, vui lòng chọn một thư mục để lưu tệp PDF này, sau đó nhấp vào OK .
Chú ý:
Dễ dàng lưu một trang tính hoặc nhiều trang tính dưới dạng các tệp PDF riêng biệt cùng một lúc:
Sản phẩm Chia sổ làm việc tiện ích của Kutools cho Excel có thể giúp bạn dễ dàng lưu một trang tính hoặc nhiều trang tính dưới dạng các tệp PDF riêng biệt cùng một lúc như minh họa bên dưới. Hãy tải về và dùng thử ngay bây giờ! (30 ngày dùng thử miễn phí)
Các bài liên quan:
- Làm cách nào để lưu tên tệp Excel với dấu thời gian?
- Làm thế nào để sử dụng chức năng Save As để tự động ghi đè lên tệp hiện có trong Excel?
- Làm cách nào để lưu, xuất nhiều / tất cả các trang tính thành tệp csv hoặc tệp văn bản riêng biệt trong Excel?
- Làm cách nào để tắt hoặc không cho phép tùy chọn Lưu & Lưu dưới dạng trong Excel?
- Làm cách nào để tắt tính năng lưu sổ làm việc nhưng chỉ cho phép lưu như trong Excel?
Công cụ năng suất văn phòng tốt nhất
Nâng cao kỹ năng Excel của bạn với Kutools for Excel và trải nghiệm hiệu quả hơn bao giờ hết. Kutools for Excel cung cấp hơn 300 tính năng nâng cao để tăng năng suất và tiết kiệm thời gian. Bấm vào đây để có được tính năng bạn cần nhất...
Tab Office mang lại giao diện Tab cho Office và giúp công việc của bạn trở nên dễ dàng hơn nhiều
- Cho phép chỉnh sửa và đọc theo thẻ trong Word, Excel, PowerPoint, Publisher, Access, Visio và Project.
- Mở và tạo nhiều tài liệu trong các tab mới của cùng một cửa sổ, thay vì trong các cửa sổ mới.
- Tăng 50% năng suất của bạn và giảm hàng trăm cú nhấp chuột cho bạn mỗi ngày!