如果您想將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, 哪個行 維修展望 錯誤在幾秒鐘內。
作者簡介:
Shirley Zhang是的數據恢復專家 DataNumen,Inc.是數據恢復技術的全球領導者,包括 sql恢復 和Outlook修復軟件產品。 欲了解更多信息,請訪問 萬維網。datanumen.COM

