ไปยังเนื้อหาหลัก

วิธีการส่งออกโครงสร้างโฟลเดอร์จาก Outlook ไปยัง Excel

บทความนี้จะแนะนำวิธีการส่งออกโครงสร้างโฟลเดอร์ของบัญชีจากไฟล์ Outlook ไปยัง Excel โปรดบรรลุตามรายละเอียดของบทความนี้

ส่งออกโครงสร้างโฟลเดอร์ของบัญชีจาก Outlook ไปยัง Excel โดยใช้รหัส VBA


ส่งออกโครงสร้างโฟลเดอร์ของบัญชีจาก Outlook ไปยัง Excel โดยใช้รหัส VBA

รหัส VBA ต่อไปนี้อาจช่วยคุณได้โปรดทำตามขั้นตอนด้านล่าง:

1. เปิดใช้งาน Excel แล้วกดไฟล์ ALT + F11 คีย์เพื่อเปิด Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่าง

2. คลิก สิ่งที่ใส่เข้าไป > โมดูลและวางรหัสต่อไปนี้ในไฟล์ โมดูล หน้าต่าง.

รหัส VBA: ส่งออกโครงสร้างโฟลเดอร์ของบัญชีจาก Outlook ไปยัง Excel:

Dim xExcelApp As Excel.Application
Dim xWb As Excel.Workbook
Dim xWs As Excel.Worksheet
Dim xMainFolderCount As Long
Sub OutlookExportFolderStructureToExcel()
    Dim xFolder As Folder
    Dim xExcelFile As String
    Dim xFileDialog As FileDialog
    On Error Resume Next
    Set xFolder = Outlook.Application.Session.PickFolder
    If xFolder Is Nothing Then Exit Sub
    Set xExcelApp = New Excel.Application
    Set xWb = xExcelApp.Workbooks.Add
    Set xWs = xWb.Sheets(1)
    With xWs.Range("A1", "A1")
         .Value = "Folder Structure"
         .Font.Size = 14
         .Font.Bold = True
    End With
    xMainFolderCount = Len(xFolder.FolderPath) - Len(Replace(xFolder.FolderPath, "\", "")) + 1
    Call ExportToExcel(xFolder.FolderPath, xFolder.Name)
    Call ProcessFolders(xFolder.Folders)
    xWs.Columns("A").AutoFit
    Set xFileDialog = xExcelApp.FileDialog(msoFileDialogSaveAs)
    With xFileDialog
        .AllowMultiSelect = False
        .FilterIndex = 1
        If .Show = 0 Then
            xWb.Close False
            xExcelApp.Quit
            Set xExcelApp = Nothing
            Exit Sub
        End If
        xExcelFile = .SelectedItems.Item(1)
    End With
    xWb.Close True, xExcelFile
    MsgBox "Export complete!", vbExclamation, "Kutools for Outlook"
End Sub

Sub ProcessFolders(ByVal xFlds As Folders)
    Dim xSubFolder As Folder
    For Each xSubFolder In xFlds
        If xSubFolder.Name <> "Conversation Action Settings" And xSubFolder.Name <> "Quick Step Settings" Then
           Call ExportToExcel(xSubFolder.FolderPath, xSubFolder.Name)
           Call ProcessFolders(xSubFolder.Folders)
        End If
    Next
End Sub

Sub ExportToExcel(ByRef xFolderPath As String, xFolderName As String)
    Dim i, n As Long
    Dim xPrefix As String
    Dim xLastRow As Integer
    i = Len(xFolderPath) - Len(Replace(xFolderPath, "\", "")) - xMainFolderCount
    For n = 0 To i
        xPrefix = xPrefix & "-"
    Next
    xFolderName = xPrefix & xFolderName
    xLastRow = xWs.UsedRange.Rows.Count + 1
    xWs.Range("A" & xLastRow) = xFolderName
End Sub

3. ยังคงอยู่ใน Microsoft Visual Basic สำหรับแอปพลิเคชัน หน้าต่างคลิก เครื่องมือ > อ้างอิง ไป เอกสารอ้างอิง - โครงการ 1 กล่องโต้ตอบและตรวจสอบ ไลบรารีวัตถุ Microsoft Excel ตัวเลือกจาก อ้างอิงที่มีอยู่ กล่องรายการดูภาพหน้าจอ:

โครงสร้างโฟลเดอร์ส่งออก doc ไปยัง excel 1

4. จากนั้นคลิก OK แล้วกด F5 กุญแจสำคัญในการเรียกใช้รหัสนี้ a เลือกโฟลเดอร์ กล่องโต้ตอบปรากฏขึ้นโปรดเลือกบัญชีอีเมลที่คุณต้องการส่งออกโครงสร้างโฟลเดอร์ดูภาพหน้าจอ:

โครงสร้างโฟลเดอร์ส่งออก doc ไปยัง excel 2

5. จากนั้นคลิก OK ปุ่มก บันทึกไฟล์ หน้าต่างจะปรากฏขึ้นโปรดระบุตำแหน่งและชื่อไฟล์สำหรับไฟล์ที่ส่งออกนี้ดูภาพหน้าจอ:

โครงสร้างโฟลเดอร์ส่งออก doc ไปยัง excel 3

6. ในที่สุดคลิก ลด และคุณสามารถไปที่สมุดงาน excel เฉพาะที่คุณบันทึกไว้เพื่อดูโครงสร้างโฟลเดอร์ที่ส่งออกดูภาพหน้าจอ:

โครงสร้างโฟลเดอร์ส่งออก doc ไปยัง excel 4

 


สุดยอดเครื่องมือเพิ่มผลผลิตในสำนักงาน

Kutools สำหรับ Outlook - คุณสมบัติอันทรงพลังมากกว่า 100 รายการเพื่อเติมพลังให้กับ Outlook ของคุณ

🤖 ผู้ช่วยจดหมาย AI: ส่งอีเมลระดับมืออาชีพทันทีด้วยเวทมนตร์ AI คลิกเพียงครั้งเดียวเพื่อตอบกลับอย่างชาญฉลาด น้ำเสียงที่สมบูรณ์แบบ การเรียนรู้หลายภาษา เปลี่ยนรูปแบบการส่งอีเมลอย่างง่ายดาย! ...

📧 การทำงานอัตโนมัติของอีเมล: ไม่อยู่ที่สำนักงาน (ใช้ได้กับ POP และ IMAP)  /  กำหนดการส่งอีเมล  /  Auto CC/BCC ตามกฎเมื่อส่งอีเมล  /  ส่งต่ออัตโนมัติ (กฎขั้นสูง)   /  เพิ่มคำทักทายอัตโนมัติ   /  แบ่งอีเมลผู้รับหลายรายออกเป็นข้อความส่วนตัวโดยอัตโนมัติ ...

📨 การจัดการอีเมล์: เรียกคืนอีเมลได้อย่างง่ายดาย  /  บล็อกอีเมลหลอกลวงตามหัวเรื่องและอื่นๆ  /  ลบอีเมลที่ซ้ำกัน  /  การค้นหาขั้นสูง  /  รวมโฟลเดอร์ ...

📁 ไฟล์แนบโปรบันทึกแบทช์  /  การแยกแบทช์  /  การบีบอัดแบบแบตช์  /  บันทึกอัตโนมัติ   /  ถอดอัตโนมัติ  /  บีบอัดอัตโนมัติ ...

🌟 อินเตอร์เฟซเมจิก: 😊อีโมจิที่สวยและเจ๋งยิ่งขึ้น   /  เพิ่มประสิทธิภาพการทำงาน Outlook ของคุณด้วยมุมมองแบบแท็บ  /  ลดขนาด Outlook แทนที่จะปิด ...

???? เพียงคลิกเดียวสิ่งมหัศจรรย์: ตอบกลับทั้งหมดด้วยไฟล์แนบที่เข้ามา  /   อีเมลต่อต้านฟิชชิ่ง  /  🕘 แสดงโซนเวลาของผู้ส่ง ...

👩🏼‍🤝‍👩🏻 รายชื่อและปฏิทิน: แบทช์เพิ่มผู้ติดต่อจากอีเมลที่เลือก  /  แบ่งกลุ่มผู้ติดต่อเป็นกลุ่มแต่ละกลุ่ม  /  ลบการแจ้งเตือนวันเกิด ...

เกิน คุณสมบัติ 100 รอการสำรวจของคุณ! คลิกที่นี่เพื่อค้นพบเพิ่มเติม

 

 

 

Comments (14)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I cannot access the toolbox to check Microsoft Excel Object Library option from the Available References list box,a
The toolbox icon is selected but greyed out

thanks
This comment was minimized by the moderator on the site
You additionally need to select "Microsoft Outlook 16.0 Object Library" as a reference.
This comment was minimized by the moderator on the site
Hello,
thank you for your fast response. I think, i’ve now set all necessary options. But i can’t find the „Apply macro security settings to installed add-ins“
I would like to send some screenshots, but can't find how to on this page.
Best regards Erich Hackel
This comment was minimized by the moderator on the site
Hello, Erich,
If you can't find the "Apply macro security settings to installed add-ins" option, please view the below screenshot:

https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-option-setting.png
This comment was minimized by the moderator on the site
Hallo,
ich habe exakt den gleichen Fehler wie Jörg. Ich habe Office Professional Plus 2021 in Deutsch installiert.
Punkt 3 finde ich unter Extras - Verweise. Auch bei mir war die "MS Excel 16.0 Object Library" bereits aktiviert, zusätzlich auch noch "Visual Basic For Applications", "MS Office 16.0 Object Library" und "OLE Automation".
Beim Ausführen ebenfalls der "Fehler beim Kompilieren", der Hilfe-Button verrät dann noch "Der Administrator Ihrer Organisation hat den für die Verwendung dieser Funktion erforderlichen Dienst deaktiviert."
Aber welcher ist das und wo / wie kann man ihn aktivieren???
This comment was minimized by the moderator on the site
Hello, Erich
May be you should enable all macros setting, please do as this:
In your Outlook, please click File > Options > Trust Center > Trust Center Settings > Macro Settings, and then check Enable all macros and Apply macro security settings to installed add-ins options.

After finishing this setting, please restart the Outlook.

Please try, thank you!
This comment was minimized by the moderator on the site
I'm using Outlook from MS Office 2019 Pro plus 64bit in German always latest version. How can I send a picture?
This comment was minimized by the moderator on the site
Hello,
May be you should enable all macros setting, please do as this:
In your Outlook, please click File > Options > Trust Center > Trust Center Settings > Macro Settings, and then check Enable all macros and Apply macro security settings to installed add-ins options.
https://www.extendoffice.com/images/stories/comments/comment-skyyang/doc-option-setting.png

After finishing this setting, please restart the Outlook.

Please try, thank you!
This comment was minimized by the moderator on the site
Hi, it looks like my answer wasn't send. I tested the script again. Same error message. I do not miss step3. That topic was/is already active. I disabled and later enabled it again. Same result. It always stops at line 40. Any idea?
This comment was minimized by the moderator on the site
Hello, Jörg Normann

The code works well in my Outlook, which Outlook version you used? Or you can upload the error screenshot here.
Thank you!
This comment was minimized by the moderator on the site
Hello, I did it the way as described. Step 3 (MS Excel 16.0 Object Library) was allready active. I disabled and lated enabled it again. When I click F5 there is no question for a folder to store. I get an error message: Error in line 40: "Fehler beim Kompilieren: Benutzerdefinierter Typ nicht definiert".
This comment was minimized by the moderator on the site
Hallo, bei mir führt der Code beim Ausführen zu einem Fehler in Zeile 40 "Fehler beim Kompilieren: Benutzerdefinierter Typ nicht definiert". Und anders als in der Beschreibung wir bei mir in Punkt 4. weder nach dem Ordner noch nach dem Mail-Konto gefragt.
This comment was minimized by the moderator on the site
Hello, Jörg.N
If you get the error prompt message, please check if you missed the step3 in this article.
You should follow the steps in the article step by step, if there is still problem, please comment here.
Thank you!
This comment was minimized by the moderator on the site
This code is great and works great, thank you.
What would maker even extra great would be if it could show the sizes (in bytes, kilobytes, megabytes, petabytes, whatever) and even possibly the item count for each folder.
:)
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations