Verwenden Sie Visual Basic, um im Posteingang auf Unterordner zuzugreifen?
-
26-10-2019 - |
Frage
Dim olApp As Outlook.Application
Dim objNS As Outlook.NameSpace
Set olApp = Outlook.Application
Set objNS = olApp.GetNamespace("MAPI")
Set myOlItems = objNS.GetDefaultFolder(olFolderInbox).Items
Lösung
Das ist sehr nah :)
Dim olApp As Outlook.Application
Dim objNS As Outlook.NameSpace
Dim olFolder As Outlook.MAPIFolder
Dim msg As Outlook.MailItem
Set olApp = Outlook.Application
Set objNS = olApp.GetNamespace("MAPI")
Set olFolder = objNS.GetDefaultFolder(olFolderInbox)
Set olFolder = olFolder.Folders("Temp")
For Each msg In olFolder.Items
Debug.Print msg.Subject
Next
Andere Tipps
Ich stellte fest, dass es einige Elemente in meinem Posteingang gab, die keine E -Mail -Elemente waren, die das Skript anhielten. Diese kleine Veränderung ermöglichte es dem Skript, weiter zu laufen, wenn so etwas wie eine Besprechungseinladung gefunden wird:
Sub getmail()
Dim olApp As Outlook.Application
Dim objNS As Outlook.Namespace
Dim olFolder As Outlook.MAPIFolder
'Dim msg As Outlook.MailItem
Dim InboxItem As Object
Set olApp = Outlook.Application
Set objNS = olApp.GetNamespace("MAPI")
Set olFolder = objNS.GetDefaultFolder(olFolderInbox)
Set olFolder = olFolder.Folders("temp")
For Each InboxItem In olFolder.Items
Debug.Print InboxItem.Subject
Debug.Print InboxItem.EntryID
Next
End Sub
Danke für deine Antwort! Hat mir viel geholfen!
(Ich entschuldige mich - wollte kommentieren, aber nicht genug Repräsentant ..)
Und um weiter nach unten zu bohren, fügen Sie weiterhin festgelegte Olfolder -Linien hinzu:
Set olFolder = objNS.GetDefaultFolder(olFolderInbox)
Set olFolder = olFolder.Folders("temp")
Set olFolder = olFolder.Folders("temp2")
Set olFolder = olFolder.Folders("temp3")
Bringt Sie zum Posteingang temp temp2 temp3
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow