Đôi khi, bạn có thể muốn chụp hàng loạt tất cả các email trong một cuộc hội thoại cụ thể rồi xuất hàng loạt chúng vào thư mục cục bộ dưới dạng tệp Văn bản. Bài viết này sẽ dạy bạn làm thế nào để có được nó trong thời gian nhanh chóng.
Vì một số lý do, bạn có thể cần xuất tất cả email trong một cuộc trò chuyện nhất định sang ổ đĩa cục bộ của mình. Nếu bạn làm việc này theo cách thủ công, cụ thể là tìm và lưu từng cái một, thì đó sẽ là một công việc tẻ nhạt và khó khăn. Do đó, bạn nên tìm kiếm phương pháp khác nhanh hơn, chẳng hạn như phương pháp sau. Nó sẽ sử dụng một đoạn mã VBA để lấy nó mà không phải đổ mồ hôi.
Xuất hàng loạt tất cả thư trong cuộc trò chuyện dưới dạng tệp văn bản
- Ngay từ đầu, hãy khởi chạy ứng dụng Outlook của bạn.
- Sau đó nhấn các nút phím “Alt + F11” để truy cập trình soạn thảo VBA của Outlook.
- Sau đó, trong cửa sổ mới, bạn cần mở một mô-đun không được sử dụng hoặc chèn trực tiếp một mô-đun mới.
- Tiếp theo, bạn nên sao chép và dán các mã VBA sau vào mô-đun này.
Public strFilePath, strFileName As String
Sub ExportMailsInConversationAsTXT()
Dim objSelectedMail As Outlook.MailItem
Dim objConversation As Outlook.Conversation
Dim objMail As Outlook.MailItem
Set objSelectedMail = ActiveExplorer.Selection.Item(1)
Set objConversation = objSelectedMail.GetConversation
If Not (objConversation Is Nothing) Then
'Get all root items in this conversation
For Each objMail In objConversation.GetRootItems
strFileName = objMail.Subject
'Remove the unsupported characters in email subject
strFileName = Replace(strFileName, "/", " ")
strFileName = Replace(strFileName, "\", " ")
strFileName = Replace(strFileName, ":", "")
strFileName = Replace(strFileName, "?", " ")
strFileName = Replace(strFileName, Chr(34), " ")
strFileName = Format(objMail.ReceivedTime, "YYYY-MM-DD") & "_" & strFileName & ".txt"
'Export as Text files
'Change "E:\" to other local folder path as per your needs
strFilePath = "E:\" & strFileName
objMail.SaveAs strFilePath, OLTXT
'Process all children as well
Call ProcessChildren(objMail, objConversation)
Next
End If
MsgBox "Complete!", vbExclamation
End Sub
Sub ProcessChildren(objCurMail As Outlook.MailItem, objCurConversation As Outlook.Conversation)
Dim objItems As Outlook.SimpleItems
Dim objItem As Outlook.MailItem
Set objItems = objCurConversation.GetChildren(objCurMail)
If objItems.Count > 0 Then
For Each objItem In objItems
strFileName = objItem.Subject
strFileName = Replace(strFileName, "/", " ")
strFileName = Replace(strFileName, "\", " ")
strFileName = Replace(strFileName, ":", "")
strFileName = Replace(strFileName, "?", " ")
strFileName = Replace(strFileName, Chr(34), " ")
strFileName = Format(objItem.ReceivedTime, "yyyy-mm-dd") & "_" & strFileName & ".txt"
strFilePath = "E:\" & strFileName
objItem.SaveAs strFilePath, OLTXT
'Process all children recursively
Call ProcessChildren(objItem, objCurConversation)
Next
End If
End Sub
- Sau đó, bạn có thể thêm dự án VBA mới vào Thanh công cụ truy cập nhanh như bình thường.
- Sau đó đảm bảo mức bảo mật macro Outlook của bạn ở mức thấp.
- Cuối cùng, bạn có thể thử.
- Đầu tiên, chọn một email.
- Sau đó bấm vào nút macro mới trong Thanh công cụ truy cập nhanh.
- Khi bạn nhận được thông báo “Hoàn thành”, bạn có thể mở thư mục cục bộ được xác định trước, trong đó bạn sẽ thấy các email ở định dạng “TXT”.
Mẹo khôi phục dữ liệu PST sau khi bị hỏng
Thông thường, trong Outlook, bạn có thể gặp phải nhiều lỗi Outlook khác nhau, một số lỗi có thể rất nghiêm trọng dẫn đến hỏng PST. Khi đó, bạn cần có những hành động để sửa chữa PST tập tin để tìm lại dữ liệu có giá trị của bạn. Trong trường hợp này, bạn chỉ có thể quay lại một công cụ có uy tín và đã được chứng minh, như DataNumen Outlook Repair.
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 lấy lại sql server 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
