หากคุณต้องการส่งออกโครงสร้างโฟลเดอร์ของไฟล์ข้อมูล Outlook ของคุณไปยังสมุดงาน Excel อย่างรวดเร็วคุณสามารถใช้วิธีการที่แนะนำในบทความนี้
ด้วยเหตุผลบางประการเช่นการบันทึกโฟลเดอร์ Outlook ปัจจุบันและโฟลเดอร์ย่อยผู้ใช้หลายคนหวังว่าจะส่งออกโครงสร้างโฟลเดอร์ของไฟล์ Outlook ไปยังไฟล์ภายนอกเช่นสมุดงาน Excel ในสิ่งต่อไปนี้เราจะแบ่งปันโค้ด VBA ให้กับคุณซึ่งสามารถช่วยให้คุณบรรลุเป้าหมายได้ในระยะเวลาอันสั้น

ส่งออกโครงสร้างโฟลเดอร์ของไฟล์ Outlook ของคุณไปยัง Excel
- ถึงtarเปิดแอปพลิเคชัน Outlook ของคุณ
- จากนั้นในหน้าต่างหลักของ Outlook ให้กดปุ่ม "Alt + F11"
- จากนั้นคุณจะเข้าสู่โปรแกรมแก้ไข Outlook VBA ซึ่งคุณควรเปิดโมดูลที่ไม่ได้ใช้
- จากนั้นคุณสามารถคัดลอกโค้ด VBA ต่อไปนี้ลงในโมดูลนี้
Dim objExcelApp As Excel.Application
Dim objExcelWorkbook As Excel.Workbook
Dim objExcelWorksheet As Excel.Worksheet
Dim lMainFolder As Long
Sub ExportFolderStructureToExcel()
Dim objSourcePSTFile As Folder
'Add a new Excel workbook
Set objExcelApp = CreateObject("Excel.Application")
Set objExcelWorkbook = objExcelApp.Workbooks.Add
Set objExcelWorksheet = objExcelWorkbook.Sheets(1)
With objExcelWorksheet
.Cells(1, 1) = "Folder Structure"
.Cells(1, 1).Font.Size = 14
.Cells(1, 1).Font.Bold = True
End With
'Select an Outlook PST file
Set objSourcePSTFile = Application.Session.PickFolder
lMainFolder = Len(objSourcePSTFile.FolderPath) - Len(Replace(objSourcePSTFile.FolderPath, "\", "")) + 1
Call ExportToExcel(objSourcePSTFile.FolderPath, objSourcePSTFile.Name)
Call ProcessFolders(objSourcePSTFile.Folders)
'Save this Excel workbook
objExcelWorksheet.Columns("A").AutoFit
strExcelFile = "E:\Folder Structure (" & Format(Now, "yyyymmddhhmmss") & ").xlsx"
objExcelWorkbook.Close True, strExcelFile
MsgBox "Complete!", vbExclamation
End Sub
Sub ProcessFolders(ByVal objFolders As Folders)
Dim objFolder As Folder
'Process all folders recursively
For Each objFolder In objFolders
If objFolder.Name <> "Conversation Action Settings" And objFolder.Name <> "Quick Step Settings" Then
Call ExportToExcel(objFolder.FolderPath, objFolder.Name)
Call ProcessFolders(objFolder.Folders)
End If
Next
End Sub
Sub ExportToExcel(ByRef strFolderPath As String, strFolderName As String)
Dim i, n As Long
Dim strPrefix As String
Dim nLastRow As Integer
i = Len(strFolderPath) - Len(Replace(strFolderPath, "\", ""))
For n = lMainFolder To i
strPrefix = strPrefix & "-"
Next
strFolderName = strPrefix & strFolderName
'Input the folder name in Excel
nLastRow = objExcelWorksheet.Range("A" & objExcelWorksheet.Rows.Count).End(xlUp).Row + 1
objExcelWorksheet.Range("A" & nLastRow) = strFolderName
End Sub
- หลังจากนั้นคุณควรตรวจสอบให้แน่ใจว่า Outlook เปิดใช้งานแมโครแล้ว
- ในที่สุดคุณสามารถถ่ายภาพ:
- ในหน้าต่างมาโครปัจจุบันให้กดปุ่ม F5
- หลังจากมาโครเสร็จสิ้นคุณจะได้รับการแจ้งเตือนว่า“ เสร็จสมบูรณ์”
- หลังจากนั้นคุณสามารถไปที่โฟลเดอร์ในเครื่องที่กำหนดไว้ล่วงหน้าเพื่อค้นหาไฟล์ Excel ใหม่ เปิดแล้วจะมีลักษณะเหมือนภาพหน้าจอต่อไปนี้:
อย่าเพิกเฉยต่อข้อผิดพลาดใด ๆ ของ Outlook
แม้จะมีความสามารถมากมาย แต่ Outlook ก็มีความอ่อนไหวต่อข้อผิดพลาดและความเสียหายเช่นเดียวกับไคลเอนต์อีเมลอื่น ๆ ดังนั้นคุณควรให้ความสำคัญกับข้อผิดพลาดทั้งหมดใน Outlook ของคุณ โปรดอย่ามองข้ามพวกเขา มิฉะนั้นการสะสมข้อผิดพลาดอาจนำไปสู่ความเสียหายของ Outlook ในที่สุด หากพบข้อผิดพลาดที่เป็นปมขอแนะนำให้ใช้เครื่องมือที่มีประสิทธิภาพเช่น DataNumen Outlook Repair, ซึ่งสามารถ ซ่อมแซม Outlook ข้อผิดพลาดภายในไม่กี่วินาที
บทนำผู้เขียน:
Shirley Zhang เป็นผู้เชี่ยวชาญด้านการกู้คืนข้อมูลใน DataNumen, Inc. ซึ่งเป็นผู้นำระดับโลกด้านเทคโนโลยีการกู้คืนข้อมูล ได้แก่ การกู้คืน sql และผลิตภัณฑ์ซอฟต์แวร์ซ่อมแซมแนวโน้ม ดูข้อมูลเพิ่มเติมได้ที่ wwwdatanumenด้วย.

