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

วิธีการส่งออกและพิมพ์รายการโฟลเดอร์และโฟลเดอร์ย่อยทั้งหมดใน Outlook

โดยทั่วไปคุณสามารถกด Ctrl + 6 ปุ่มเพื่อดูรายการโฟลเดอร์ทั้งหมดบนบานหน้าต่างนำทางใน Outlook อย่างไรก็ตามคุณไม่สามารถพิมพ์รายการโฟลเดอร์ได้ บทความนี้จะแนะนำสคริปต์ VBA สองสคริปต์เพื่อส่งออกและพิมพ์รายการโฟลเดอร์ทั้งหมดและโฟลเดอร์ย่อยใน Outlook


ส่งออกและพิมพ์รายการโฟลเดอร์ Outlook และโฟลเดอร์ย่อยทั้งหมดในอีเมลใหม่

วิธีนี้จะแนะนำ VBA เพื่อส่งออกรายการโฟลเดอร์ทั้งหมดและโฟลเดอร์ย่อยในบัญชีอีเมลที่ระบุไปยังอีเมลใหม่ใน Outlook จากนั้นคุณสามารถพิมพ์รายการโฟลเดอร์ได้อย่างง่ายดาย

1 กด อื่น ๆ + F11 ปุ่มเพื่อเปิดหน้าต่าง Microsoft Visual Basic for Applications

2 คลิก สิ่งที่ใส่เข้าไป > โมดูลจากนั้นวางโค้ด VBA ด้านล่างลงในหน้าต่างโมดูลใหม่

VBA: ส่งออกรายการโฟลเดอร์และโฟลเดอร์ย่อยในอีเมลใหม่ใน Outlook

Public gFolders As String

Public Sub GetFolderNames()
Dim oSession As Outlook.NameSpace
Dim oFolder As Outlook.MAPIFolder
Dim oNewMail As Outlook.mailItem

Set oSession = Outlook.Application.GetNamespace("MAPI")
Set oFolder = oSession.PickFolder

If (oFolder Is Nothing) Then Exit Sub

ProcessFolder oFolder

Set oNewMail = Application.CreateItem(olMailItem)
oNewMail.Body = gFolders
oNewMail.Display

gFolders = ""
End Sub

Sub ProcessFolder(CurrentFolder As Outlook.MAPIFolder)

Dim i As Long
Dim oSubFolder As Outlook.MAPIFolder
Dim oFolder As Outlook.MAPIFolder
Dim sFolderPaths As String

    For i = CurrentFolder.Folders.Count To 1 Step -1
Set oFolder = CurrentFolder.Folders(i)

sFolderPaths = oFolder.FolderPath
gFolders = gFolders & vbCrLf & sFolderPaths & " " & oFolder.Items.Count
Next

For Each oSubFolder In CurrentFolder.Folders
If oSubFolder.Name <> "Deleted Items" Then
ProcessFolder oSubFolder
End If

Next

End Sub

3 กด F5 กุญแจสำคัญในการเรียกใช้ VBA นี้

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

5. และตอนนี้รายการโฟลเดอร์ของบัญชีอีเมลที่ระบุจะถูกคัดลอกไปยังอีเมลใหม่ตามภาพด้านล่างที่แสดง กรุณาคลิก เนื้อไม่มีมัน > พิมพ์ เพื่อพิมพ์รายการโฟลเดอร์ที่คัดลอก

6. หลังจากพิมพ์แล้วโปรดปิดอีเมลใหม่โดยไม่บันทึก


ส่งออกและพิมพ์รายการโฟลเดอร์ Outlook ทั้งหมดที่มีโฟลเดอร์ย่อยใน Notepad

วิธีนี้จะแนะนำ VBA เพื่อส่งออกรายการโฟลเดอร์ทั้งหมดและโฟลเดอร์ย่อยในบัญชีอีเมลที่ระบุจาก Outlook ไปยัง Notepad จากนั้นคุณสามารถพิมพ์รายการโฟลเดอร์ Outlook ใน Notepad ได้อย่างง่ายดาย

1 กด อื่น ๆ + F11 ปุ่มเพื่อเปิดหน้าต่าง Microsoft Visual Basic for Applications

2 คลิก สิ่งที่ใส่เข้าไป > โมดูลจากนั้นวางโค้ด VBA ด้านล่างลงในหน้าต่างโมดูลใหม่

VBA: ส่งออกรายการโฟลเดอร์ Outlook และโฟลเดอร์ย่อยทั้งหมดจาก Outlook ไปยัง Notepad

Dim gFileName, gCreateTree, gBase

Public Sub ExportFolderTree()
Dim objOutlook
Dim F, Folders
Dim Result

  Set objOutlook = CreateObject("Outlook.Application")

  Set F = objOutlook.Session.PickFolder

If Not F Is Nothing Then
Set Folders = F.Folders

    Result = MsgBox("Do you want to create tree?", vbYesNo + vbDefaultButton2 + vbApplicationModal, "Output Folder Tree")
If Result = 6 Then
gCreateTree = True
Else
gCreateTree = False
End If

    gFileName = GetDesktopFolder() & "\Outlook-Folders.txt"
gBase = Len(F.FolderPath) - Len(Replace(F.FolderPath, "\", "")) + 1

    WriteToATextFile (CreateFolderTree(F.FolderPath, F.Name))

LoopFolders Folders

Set F = Nothing
Set Folders = Nothing
Set objOutlook = Nothing
End If
End Sub

Private Function GetDesktopFolder()
Dim objShell
Set objShell = CreateObject("WScript.Shell")
GetDesktopFolder = objShell.SpecialFolders("Desktop")
Set objShell = Nothing
End Function

Private Sub LoopFolders(Folders)
Dim F

For Each F In Folders
WriteToATextFile (CreateFolderTree(F.FolderPath, F.Name))
LoopFolders F.Folders
Next
End Sub

Private Sub WriteToATextFile(OLKfoldername)
Dim objFSO, objTextFile
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile(gFileName, 8, True)
objTextFile.WriteLine (OLKfoldername)
objTextFile.Close
Set objFSO = Nothing
Set objTextFile = Nothing
End Sub

Private Function CreateFolderTree(OLKfolderpath, OLKfoldername)
If gCreateTree = False Then
CreateFolderTree = Mid(OLKfolderpath, 3)
Else
Dim i, x, OLKprefix
i = Len(OLKfolderpath) - Len(Replace(OLKfolderpath, "\", ""))

    For x = gBase To i
OLKprefix = OLKprefix & "-"
Next

CreateFolderTree = OLKprefix & OLKfoldername
End If
End Function

3 กด F5 กุญแจสำคัญในการเรียกใช้ VBA นี้ ถัดไปในกล่องโต้ตอบเลือกโฟลเดอร์เปิดโปรดเลือกบัญชีอีเมลที่มีรายการโฟลเดอร์ที่คุณต้องการส่งออกและพิมพ์จากนั้นคลิก OK ปุ่ม. ดูภาพหน้าจอ:

4. จากนั้นกล่องโต้ตอบ Output Folder Tree จะมา กรุณาคลิกที่ไฟล์ ใช่ หรือ ไม่ ปุ่มตามที่คุณต้องการ

และตอนนี้ไฟล์ Text ชื่อ โฟลเดอร์ Outlook ถูกสร้างและบันทึกไว้บนเดสก์ท็อปของคุณตามภาพด้านล่างที่แสดง

5. ดับเบิลคลิกเพื่อเปิดไฟล์ข้อความใหม่จากนั้นคลิก เนื้อไม่มีมัน > พิมพ์ เพื่อพิมพ์รายการโฟลเดอร์ Outlook ที่ส่งออก

คลิกเพียงครั้งเดียวเพื่อแสดงจำนวนรายการทั้งหมดในโฟลเดอร์ทั้งหมดบนบานหน้าต่างนำทางใน Outlook

โดยปกติ Outlook จะแสดงหมายเลขของรายการที่ยังไม่ได้อ่านในแต่ละโฟลเดอร์บนบานหน้าต่างนำทาง แต่ Kutools สำหรับ Outlook's โฟลเดอร์ทั้งหมดแสดงจำนวนรายการทั้งหมด คุณสมบัติสามารถช่วยให้คุณแสดงจำนวนรายการทั้งหมดในโฟลเดอร์ทั้งหมดได้ด้วยคลิกเดียว


โฟลเดอร์ทั้งหมดแสดงจำนวนรวม k ถึง 9.00

บทความที่เกี่ยวข้อง


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

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

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

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

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

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

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

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

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

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

 

 

Comments (3)
Rated 5 out of 5 · 1 ratings
This comment was minimized by the moderator on the site
Thank you so much for this very valuable post. It really helped me a lot as outlook is still not able to show the folder structure!
This comment was minimized by the moderator on the site
Saved us a ton of time. Thanks for the detailed instructions. Worked like a charm! :)
Rated 5 out of 5
This comment was minimized by the moderator on the site
Most excellent tip. Thank you!
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations