Thema Datum  Von Nutzer Rating
Antwort
Rot eml Datei mittels VBA in Outlook2010 nach msg speichern
06.06.2016 10:46:07 Peter
Solved
06.06.2016 10:51:17 Peter
NotSolved

Ansicht des Beitrags:
Von:
Peter
Datum:
06.06.2016 10:46:07
Views:
1641
Rating: Antwort:
 Nein
Thema:
eml Datei mittels VBA in Outlook2010 nach msg speichern
Hallo zusammen, folgendes Problem: Ich möchte >1000 *.eml Dateien (von Lotus Notes) mittels VBA in Outlook2010 nach *.msg speichern. Manuell gehe ich dabei so vor: 1. *.eml mittels drag&drop nach Outlook ziehen 2. diese dann mittels Doppelklick öffnen 3. unter "speichern unter" als *msg irgendwo speichern und 4. wieder mittels drag&drop wieder zurück nach Outlook ziehen Bei 1000 oder mehr Emails ist das keine akzeptable Lösung. Da ich kein Experte in VBA bin habe ich mir in verschiedenen VBA Foren den folgenden Code zusammengestellt, dieser ist noch unvollständig und soll in der ersten Instanz lediglich dazu dienen die Datei zu öffnen und anzuzeigen: Sub GetSelectedItems() Dim myOlExp As Outlook.Explorer Dim myOlSel As Outlook.Selection Dim mySender As Outlook.AddressEntry Dim oMail As MailItem Dim oAppt As Outlook.AppointmentItem Dim oPA As Outlook.PropertyAccessor Dim strSenderID As String Const PR_SENT_REPRESENTING_ENTRYID As String = _ "http://schemas.microsoft.com/mapi/proptag/0x00410102" Dim MsgTxt As String Dim x As Long MsgTxt = "Senders of selected items:" Set myOlExp = Application.ActiveExplorer Set myOlSel = myOlExp.Selection For x = 1 To myOlSel.Count If myOlSel.Item(x).Class = OlObjectClass.olMail Then ' For mail item, use the SenderName property. Set oMail = myOlSel.Item(x) MsgTxt = MsgTxt & oMail.SenderName & ";" 'Else: myOlSel.Item(x).Class = OlObjectClass.olAppointment ' For appointment item, use the Organizer property. ' Set oAppt = myOlSel.Item(x) ' MsgTxt = MsgTxt & oAppt.Organizer & ";" 'Else ' For other items, use the property accessor to get sender ID, ' then get the address entry to display the sender name. ' Set oPA = myOlSel.Item(x).PropertyAccessor ' strSenderID = oPA.GetProperty(PR_SENT_REPRESENTING_ENTRYID) ' Set mySender = Application.Session.GetAddressEntryFromID(strSenderID) ' MsgTxt = MsgTxt & mySender.Name & ";" End If oMail.Display 'oMail.SaveAs "D:\test.msg", olMSG Next x Debug.Print MsgTxt MsgBox (MsgTxt) End Sub Allerdings finde ich keinen Befehl um die *.eml Datei zu öffnen. Der Code funktioniert wenn eine *msg Datei ausgewählt ist. Die in Outlook selektierte(n) Email(s) wir geöffnet und eine MessageBox mit den Absenderinfos wird angezeigt. Hat jemand eine Idee wie ich das lösen kann? Danke und Gruß Peter

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot eml Datei mittels VBA in Outlook2010 nach msg speichern
06.06.2016 10:46:07 Peter
Solved
06.06.2016 10:51:17 Peter
NotSolved