Nếu bạn muốn gửi tất cả các trang tính trong sổ làm việc Excel dưới dạng các email Outlook riêng biệt, bạn có thể sử dụng phương pháp được giới thiệu trong bài viết này. Nó có thể hướng dẫn bạn nhận ra hàng loạt mà không cần gửi từng cái một một cách phiền phức.
Trong bài viết trước của tôi “2 phương pháp nhanh để gửi bảng tính Excel dưới dạng email OutlookTrong bài viết đó, bạn có thể tìm hiểu hai cách để gửi một bảng tính Excel qua email. Nếu bạn muốn gửi hàng loạt tất cả các bảng tính trong cùng một sổ làm việc dưới dạng các email riêng lẻ, việc sử dụng một trong hai phương pháp được đề cập trong bài viết đó sẽ khá tốn thời gian và rắc rối. Vì vậy, ở đây chúng tôi sẽ giới thiệu một cách khác, có thể thực hiện việc “Gửi hàng loạt” này một cách nhanh chóng.

Gửi hàng loạt tất cả các trang tính trong một sổ làm việc Excel dưới dạng email riêng biệt
- Đầu tiên, bạn nên mở sổ làm việc Excel nguồn.
- Sau đó, sau khi vào cửa sổ Excel, bạn nên nhấn vào phím tắt “Alt + F11”.
- Tiếp theo, một cửa sổ khác có tên là “Microsoft Visual Basic for Applications” sẽ hiển thị.
- Trong đó, bạn phải mở một mô-đun không sử dụng hoặc chèn một mô-đun mới.
- Sau đó, bạn có thể sao chép mã VBA sau vào mô-đun này.
Sub SendEachWorksheet_inOutlookEmail()
Dim objWorksheet As Excel.Worksheet
Dim objRange As Excel.Range
Dim objTempWorkbook As Excel.Workbook
Dim objTempWorksheet As Excel.Worksheet
Dim strTempFolder As String
Dim strHTMLFile As String
Dim objHTMLFile As Object
Dim objFileSystem As Object
Dim objTextStream As Object
Dim objOutlookApp As Outlook.Application
Dim objMail As Outlook.MailItem
For Each objWorksheet In ActiveWorkbook.Sheets
Set objRange = objWorksheet.UsedRange
objRange.Copy
Set objTempWorkbook = Excel.Application.Workbooks.Add(1)
Set objTempWorksheet = objTempWorkbook.Sheets(1)
With objTempWorksheet.Cells(1)
.PasteSpecial xlPasteValues
.PasteSpecial xlPasteColumnWidths
.PasteSpecial xlPasteFormats
End With
strTempFolder = CStr(Environ("USERPROFILE")) & "\AppData\Local\Temp"
strHTMLFile = strTempFolder & "\Temp" & Format(Now, "yyyymmddhhmmss") & ".htm"
Set objHTMLFile = objTempWorkbook.PublishObjects.Add(xlSourceRange, strHTMLFile, objTempWorksheet.Name, objTempWorksheet.UsedRange.Address)
objHTMLFile.Publish (True)
Set objOutlookApp = CreateObject("Outlook.Application")
Set objMail = objOutlookApp.CreateItem(olMailItem)
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
Set objTextStream = objFileSystem.OpenTextFile(strHTMLFile)
objMail.HTMLBody = objTextStream.ReadAll
'Change the email details as per your needs
With objMail
.To = "test@datanumen.com"
.Subject = objWorksheet.Name
.Display
End With
objTextStream.Close
objTempWorkbook.Close False
Kill strHTMLFile
Next
End Sub
- Sau đó, bạn có thể kích hoạt macro này bằng cách nhấn nút phím F5 hoặc nhấp vào biểu tượng “Chạy” trên thanh công cụ.
- Ngay lập tức, các email tương ứng với tất cả các trang tính trong sổ làm việc Excel này sẽ hiển thị trong Outlook.
- Cuối cùng, bạn có thể kiểm tra lại tất cả các chi tiết của email và cuối cùng nhấp vào nút “Gửi” để gửi email đi.
Áp dụng Công cụ khôi phục tiềm năng nếu không có bản sao lưu
Ngày càng có nhiều người dùng hiểu được tầm quan trọng của việc sao lưu dữ liệu. Miễn là bạn đã sao lưu tệp PST của mình, phục hồi PST sau khi thiệt hại sẽ khá đơn giản. Nhưng nếu không có bản sao lưu PST hiệu quả và cập nhật, bạn không có lựa chọn nào khác ngoài việc nhờ đến sự trợ giúp của một công cụ sửa chữa PST bên ngoài, chẳng hạn như DataNumen Outlook Repair. Nó có thể sửa chữa các tệp PST bị xâm phạm một cách dễ dàng.
Giới thiệu tác giả:
Shirley Zhang là một chuyên gia phục hồi dữ liệu trong DataNumen, Inc., công ty hàng đầu thế giới về công nghệ khôi phục dữ liệu, bao gồm phục hồi sql và các sản phẩm phần mềm sửa chữa triển vọng. Để biết thêm thông tin, hãy truy cập www.datanumennăm
