Hallöchen zusammen,
ich habe folgendes kleines Problem...
Ich schreibe gerade an einem Programm der automatisch Emails in einen Explorer Ordner abspeichert, so weit so gut.
Nun wenn aber eine E-Mail von dem Mail Delivery Subsystem (Empfangsbestätigung) dazwischen kommt, bricht er ab und macht nichts mehr bzw. ich kann noch nicht mal diese Mail Delivery Subsystem-Mail in einen Explorer Ordner abspeichern.
(Manuell kann ich diese Mails abspeichern)
Nun ist meine simple Frage, kann man irgendwie in VBA herauslesen welcher Email-Typ das ist ?
Mit freundlichen Grüßen
Number Cruncher
Update:
Quellcode
Update 2:
Lösung
ich habe folgendes kleines Problem...
Ich schreibe gerade an einem Programm der automatisch Emails in einen Explorer Ordner abspeichert, so weit so gut.
Nun wenn aber eine E-Mail von dem Mail Delivery Subsystem (Empfangsbestätigung) dazwischen kommt, bricht er ab und macht nichts mehr bzw. ich kann noch nicht mal diese Mail Delivery Subsystem-Mail in einen Explorer Ordner abspeichern.
(Manuell kann ich diese Mails abspeichern)
Nun ist meine simple Frage, kann man irgendwie in VBA herauslesen welcher Email-Typ das ist ?
Mit freundlichen Grüßen
Number Cruncher
Update:
Visual Basic-Quellcode
- Dim myOlApp As Outlook.Application
- Dim myMail As Outlook.MailItem
- Dim mail As String
- Dim pfad As String
- Dim fs As Object
- myOlApp = CreateObject(“Outlook.Application“)
- myMail = myOlApp.CreateItem(Microsoft.Office.Interop.Outlook.OlItemType.olMailItem)
- fs = CreateObject(“Scripting.FileSystemObject“)
- pfad = (My.Settings.Speichern & "\") 'Speicherpfad'
- For Each myMail In myOlApp.ActiveExplorer.Selection
- mail = " " 'Ersetzt alle Zeichen die nicht abgespeichert werden können
- mail = Replace(myMail.Subject, ": ", "_ ")
- mail = Replace(mail, "&", "_")
- mail = Replace(mail, "<", "_")
- mail = Replace(mail, ">", "_")
- mail = Replace(mail, "?", "_")
- mail = Replace(mail, "\", "_")
- mail = Replace(mail, "/", "_")
- mail = Replace(mail, "*", "_")
- mail = Replace(mail, "|", "_")
- myMail.SaveAs(pfad & mail & "_" & myMail.EntryID & ".msg", Microsoft.Office.Interop.Outlook.OlSaveAsType.olMSG)
- Next
- End Sub
Update 2:
Alle MailItems durch Objekte ersetzt und eine Abfrage mit
ReportItem
durchgeführt. Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von „Number Cruncher“ ()