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

บทความที่เกี่ยวข้อง
Kutools สำหรับ Outlook - นำคุณลักษณะขั้นสูง 100 รายการมาสู่ Outlook และทำให้การทำงานง่ายขึ้นมาก
- CC อัตโนมัติ / BCC ตามกฎเมื่อส่งอีเมล ส่งต่ออัตโนมัติ อีเมลหลายฉบับโดยกำหนดเอง ตอบอัตโนมัติ ไม่มีเซิร์ฟเวอร์แลกเปลี่ยนและคุณสมบัติอัตโนมัติอื่น ๆ ...
- คำเตือน BCC - แสดงข้อความเมื่อคุณพยายามตอบกลับทั้งหมด หากที่อยู่อีเมลของคุณอยู่ในรายการ BCC; เตือนเมื่อไม่มีไฟล์แนบและคุณสมบัติการเตือนอื่น ๆ ...
- ตอบกลับ (ทั้งหมด) พร้อมไฟล์แนบทั้งหมดในการสนทนาทางไปรษณีย์; ตอบกลับอีเมลจำนวนมาก ในไม่กี่วินาที เพิ่มคำทักทายอัตโนมัติ เมื่อตอบกลับ; เพิ่มวันที่ในหัวเรื่อง ...
- เครื่องมือแนบ: จัดการไฟล์แนบทั้งหมดในอีเมลทั้งหมด ถอดอัตโนมัติ, บีบอัดทั้งหมด, เปลี่ยนชื่อทั้งหมด, บันทึกทั้งหมด ... รายงานด่วน, นับอีเมลที่เลือก...
- อีเมลขยะที่มีประสิทธิภาพ ตามธรรมเนียม; ลบอีเมลและผู้ติดต่อที่ซ้ำกัน... ช่วยให้คุณทำงานได้อย่างชาญฉลาดขึ้นเร็วขึ้นและดีขึ้นใน Outlook

