Outlook共享邮箱 - 访问收件箱的特定子文件夹的多个文件夹的详细信息

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Outlook共享邮箱 - 访问收件箱的特定子文件夹的多个文件夹的详细信息相关的知识,希望对你有一定的参考价值。

我是VBA高级水平的新手。我可以管理基本但这个更先进

共享邮箱名称:trvx-prog.obs@orange.com

请参考下面的截图

从这个共享邮箱,我需要访问:

  • 文件夹Madhvi和P_Wardah及其子文件夹(截图中显示的四个子文件夹)
  • 需要它们用于每周报告提取的日期范围(主题,发件人,发送日期,我们正在访问的文件夹名称)
  • 这应该是自动运行每周运行
  • 结果应该有点像下面

但我无法访问第二个文件夹和子文件夹

Option Explicit
Sub EmailStatsV3()
    Dim Item As Object
    Dim varOutput() As Variant
    Dim lngcount As Long
    Dim xlApp As Excel.Application
    Dim xlSht As Excel.Worksheet
    Dim ShareInbox As Outlook.MAPIFolder
    Dim olNs As Outlook.NameSpace
    Dim olRecip As Outlook.Recipient
    Dim SubFolder As Object

    Set olNs = Application.GetNamespace("MAPI")
    Set olRecip = olNs.CreateRecipient("trvx-prog.obs@orange.com") '// Owner's Name or email address
    Set ShareInbox = olNs.GetSharedDefaultFolder(olRecip, olFolderInbox)
    Set SubFolder = ShareInbox.Folders("P_Wardah")


    ReDim varOutput(1 To SubFolder.Items.Count, 1 To 4)

    For Each Item In SubFolder.Items
        If TypeName(Item) = "MailItem" Then
            lngcount = lngcount + 1
            varOutput(lngcount, 1) = Item.ReceivedTime 'stats on when received
            varOutput(lngcount, 2) = Item.Subject 'to split out prefix
            varOutput(lngcount, 3) = Item.Sender
            varOutput(lngcount, 4) = SubFolder.Name
        End If
    Next

   'Creates a blank workbook in excel
    Set xlApp = New Excel.Application
    Set xlSht = xlApp.Workbooks.Add.Sheets(1)


    xlSht.Range("A1").Resize(UBound(varOutput, 1), _
                         UBound(varOutput, 2)).Value = varOutput
    xlApp.Visible = True
End Sub
  • 仅收到文件夹P_Wardah的详细信息
  • 需要访问Madhvi的文件夹,我不能
  • 需要访问P_Wardah和Madhvi的子文件夹(Treated,No Perimeter,Follow Up,Pending)
  • 需要根据outlook对每周的日期范围进行分类
答案

这不是一个完整的答案 - 只是帮助你前进的帮助

您还需要一个循环来遍历SubFolder Eg的所有子文件夹

For Each xFldr In SubFolder.Folders
   ' Recursive Call to process xFldr
Next

所以你的文件夹处理程序需要在它自己的Sub中,然后自己调用(递归调用)

以上是关于Outlook共享邮箱 - 访问收件箱的特定子文件夹的多个文件夹的详细信息的主要内容,如果未能解决你的问题,请参考以下文章

outlook邮箱服务器冲突导致无法自动更新接收文件怎么办

outlook邮箱满了如何保存到本地

共享收件箱 - 在 Outlook VBA 中跳过非邮件项目

outlook收件箱的邮件移至存档文件夹后找不到了

Outlook - 从带有 .xls 附件的电子邮件和特定发件人中保存文件,然后将电子邮件移动到子文件夹

outlook同一账户的情况下,怎样换台电脑能查看到以前的邮件