Importieren von eml-Dateien in Outlook

Outlook

Wenn Sie jemals Outlook Express, Windows (Live) Mail, Thunderbird, Lotus/IBM Notes oder grundsätzlich einen anderen Mail-Client als Outlook verwendet haben, besteht die Möglichkeit, dass Sie auch einige eml-Dateien irgendwo gespeichert haben.

Obwohl Outlook das Öffnen von eml-Dateien unterstützt, bietet es keine Möglichkeit, diese in Outlook zu importieren.

Dieses Leitfaden enthält Anweisungen und 2 Skripte zum Importieren von eml-Dateien in einen Outlook-Ordner Ihrer Wahl.

Importieren einer einzelnen EML-Datei

Wenn Sie nur eine einzelne eml-Datei importieren müssen, können Sie einfach auf die eml-Datei doppelklicken, um sie mit Outlook zu öffnen. Wenn es sich nicht mit Outlook öffnen lässt, setzen Sie Outlook als Standardprogramm für eml-Dateien.

Nach dem Öffnen der Nachricht können Sie diese mit der Schaltfläche “Speichern” im Posteingangsordner speichern oder mit dem Befehl “Verschieben” in den Ordner Ihrer Wahl speichern;

Datei-> In Ordner verschieben

Ursprüngliches Importskript (langsam)

Das ursprüngliche Importskript verwendet die integrierten Windows- und Outlook-Skriptfunktionen, um jede eml-Datei zu öffnen und in einen Ordner Ihrer Wahl zu verschieben.

Diese Methode ist relativ langsam, da Outlook erst dann etwas mit der eml-Nachricht machen kann, wenn sie visuell geöffnet wurde. Deshalb gibt es im Skript eine “Sleep”-Anweisung von 1 Sekunde (1000 Millisekunden). Wenn Ihr Computer langsam ist, um die eml-Dateien zu öffnen, müssen Sie diesen Wert möglicherweise erhöhen. Wenn Sie sich in dieser Situation befinden, finden Sie den Hinweis am Ende des Skripts.

Das bedeutet, dass dieses Skript bis zu 60 eml-Nachrichten pro Minute importieren kann.

Wichtig!
Vergewissern Sie sich, dass Outlook als Standardanwendung zum Öffnen von eml-Dateien auf Ihrem Computer eingestellt ist, bevor Sie das Skript ausführen.

 

1.) Skriptdateien herunterladen; importemldateien.zip
2.) Öffnen oder entpacken Sie die Zip-Datei und doppelklicken Sie auf; import-eml.vbs
3.) Wählen Sie den Ordner mit den eml-Dateien aus, die Sie importieren möchten.

4.) Wählen Sie den Outlook-Ordner aus, in den Sie die eml-Dateien importieren möchten.

Hinweis:
Der Auswahldialog für Outlook-Ordner kann im Hintergrund geladen werden. Wenn dies der Fall ist, wählen Sie Outlook in der Taskleiste aus und blättern Sie bei Bedarf durch Ihre geöffneten Outlook-Fenster, um es zu finden. Es ist normalerweise dasjenige, das Sie zuletzt angesehen haben.

5.) Wichtig! Nachdem Sie den Ordner ausgewählt haben, geben Sie keine weiteren Eingaben über Maus, Tastatur, Touch, Stift oder eine andere Methode ein. Wie bereits erwähnt, muss Outlook diese Nachricht visuell öffnen, und ein Wechsel der Ansicht unterbricht das Skript; warten Sie einfach auf das Dialogfeld “Import abgeschlossen“.

Hinweis:
Abhängig von der Reaktionsfähigkeit Ihres Computers und der Anzahl der Add-Ins, die Sie in Outlook installiert haben, können Sie die Wartezeit verkürzen, um den Importvorgang zu beschleunigen oder den Wert hinter WScript.Sleep (im Skript) zu erhöhen, um es zuverlässiger zu machen, indem Sie Outlook mehr Zeit zum Laden geben. Wenn die Nachricht nicht genügend Zeit zum Laden hat, schlägt das Skript fehl.

Schritt-für-Schritt-Anleitung zum Importieren von EML-Dateien in Outlook mit VBA

Schritt 1: Vorbereitung

  • Stellen Sie sicher, dass Sie Zugriff auf die EML-Dateien haben und wissen, in welchem Verzeichnis sie gespeichert sind.
  • Öffnen Sie Outlook.

Schritt 2: Zugriff auf den VBA-Editor

  • Drücken Sie in Outlook ALT + F11, um den VBA-Editor zu öffnen.

Schritt 3: Neues Modul hinzufügen

  • Im VBA-Editor gehen Sie zu Einfügen > Modul, um ein neues Modul zu erstellen.

Schritt 4: VBA-Code einfügen

  • Kopieren Sie den folgenden VBA-Code in das neue Modul:

Sub ImportEMLFiles()
Dim olApp As Object
Dim MailObject As Object
Dim EMLFolder As String
Dim EMLFile As String

' Pfad zum Verzeichnis der EML-Dateien
EMLFolder = "C:\Pfad\Zu\Ihren\EML-Dateien\"
EMLFile = Dir(EMLFolder & "*.eml")

Set olApp = CreateObject("Outlook.Application")

' Schleife durch alle EML-Dateien im Verzeichnis
Do While EMLFile <> ""
Set MailObject = olApp.CreateItemFromTemplate(EMLFolder & EMLFile)
MailObject.Save
EMLFile = Dir
Loop

Set MailObject = Nothing
Set olApp = Nothing
End Sub

  • Passen Sie den EMLFolder-Pfad an den Ort an, an dem Ihre EML-Dateien gespeichert sind.

Schritt 5: Ausführen des Skripts

  • Führen Sie das Skript aus, indem Sie es im VBA-Editor auswählen und F5 drücken oder auf Ausführen > Sub/UserForm ausführen klicken.

Schritt 6: Überprüfung

  • Überprüfen Sie nach dem Ausführen des Skripts, ob die EML-Dateien erfolgreich in Outlook importiert wurden.

Wichtige Hinweise

  • Sicherheitsaspekte: VBA-Skripte können potentielles Sicherheitsrisiken darstellen. Stellen Sie sicher, dass Sie den Code verstehen, bevor Sie ihn ausführen.
  • Kompatibilität: Dieses VBA-Skript wurde für Microsoft Outlook entwickelt. Es könnte notwendig sein, den Code für spezifische Outlook-Versionen anzupassen.
  • Backup: Erstellen Sie vor dem Importieren ein Backup Ihrer EML-Dateien und Ihres Outlook-Postfachs.

Durch diese Methode können Sie EML-Dateien in Outlook importieren, ohne auf zusätzliche Software oder manuelle Methoden angewiesen zu sein.

Redemption Importing Script (schnell)

Das Redemption-Skript bietet die gleiche Schnittstelle wie das ursprüngliche Skript, basiert aber auf der (kostenlosen) Redemption-Skriptbibliothek, mit der Sie die Nachrichten über den Hintergrundprozess importieren können. Die Redemption-Skriptbibliothek wird von Outlook MVP Dmitry Streblechenko erstellt und gepflegt, der sie zur Vereinfachung verschiedener programmatischer Szenarien für Outlook erstellt hat.

Das bedeutet, dass es nicht notwendig ist, die Nachrichten visuell zu öffnen, eine Ruheanweisung hinzuzufügen oder zu optimieren oder Ihren Computer im Leerlauf zu lassen, um eine Unterbrechung des Skripts zu vermeiden. Der zusätzliche Vorteil dabei ist, dass es viel (viel!) schneller und zuverlässiger ist.

Der einzige Nachteil ist, dass Sie die Redemption Scripting Library installieren müssen, die auf gesperrten (Firmen-)Computern ein Problem darstellen kann. Wenn Sie sich in dieser Situation befinden, lesen Sie den Hinweis unten für einen möglichen Workaround.

1.) Skriptdateien herunterladen; importemldateien.zip
2.) Öffnen oder entpacken Sie die Zip-Datei.
3.) Klicken Sie hier, um zur Website der Redemption zu gelangen und die Redemption herunterzuladen und zu installieren;
a.) Laden Sie die Developer-Version herunter, die Sie kostenlos verwenden können.
b.) Entpacken Sie die Datei Redemption.zip und doppelklicken Sie auf Install.exe.
c.) Befolgen Sie die Anweisungen zur Installation von Redemption. Die Übernahme der Standardeinstellungen ist in Ordnung.

4.) Kehren Sie zu dem Ort zurück, an dem Sie die Skriptdateien in Schritt 2 extrahiert haben, und doppelklicken Sie auf import-eml-rdo.vbs.
5.) Wählen Sie den Ordner mit den eml-Dateien aus, die Sie importieren möchten.

6.) Wählen Sie den Outlook-Ordner aus, in den Sie die eml-Dateien importieren möchten.

Hinweis:
Der Auswahldialog für Outlook-Ordner kann im Hintergrund geladen werden. Wenn dies der Fall ist, wählen Sie Outlook in der Taskleiste aus und blättern Sie bei Bedarf durch Ihre geöffneten Outlook-Fenster, um es zu finden. Es ist normalerweise dasjenige, das du zuletzt angesehen hast.

 

Import Programme

  • ReliefJet Essentials
    Kommerzielle Version, das auch in der Domänenumgebung funktioniert. Darüber hinaus bietet es viele weitere nützliche Outlook-Optimierungen und Funktionen.
  • IMPORT EML TO OUTLOOK
    Mit diesem Programm können Sie schnell und einfach E-Mail-Nachrichtendateien im.EML-Format in beliebige Outlook- und Exchange-Postfächer und andere Speicher importieren. Alle wichtigen Arten von Outlook-Konten werden unterstützt: POP3, IMAP, Exchange, Hotmail/Outlook.com (EAS), PST-Datendateien sowie öffentliche Ordner von Exchange Server.

-

Vorheriger Artikel Nächster Artikel

9 Kommentare zu “Importieren von eml-Dateien in Outlook

  1. Axel Luchterhand

    Hallo,
    ich hatte das Skript aus dem Explorer ausgeführt und erst nachdem ich die Dateiendungen hab anzeigen lassen, hat es funktioniert.

    Vielen Dank, das Skript hat sehr geholfen.

    Antwort
  2. Axel Luchterhand

    Hallo,
    ich habe das Skript an zwei Rechnern probiert. Bei einem funktioniert es wunderbar (schnelle Version). Bei dem anderen funktionieren beide Versionen nicht. Direkt nach der Auswahl des Outlook Ordners kommt die Nachricht: “Der Import ist fertig”. Es werden anscheinend die eml-Dateien nicht “geöffnet”. Was könnte man noch probieren bzw. ändern?

    Beste Grüße

    Antwort
  3. Christoph

    Hallo,
    habe das import-eml-rdo.vbs versucht zu nutzen. Nach dem auswählen des Ordners in Outlook kommt die Outlook Redemtion Lizenz Meldung welche ich mit “I Agree” bestätige. Dannach bekomme ich folgenden Fehler:
    Zeile: 15
    Zeichen: 9
    Fehler: Falsches BS oder BS-Version für Anwendung
    Code: 800401FA
    Quelle: (null)
    Hat jemand eine Idee?
    Danke.

    Antwort
  4. Howard Heyer

    Wäre es für einen normal User besser ein Importprogramm zu benutzen um die eml in Outlook zu importieren?

    Antwort
  5. Loa Dor

    Großartiges Tool.
    Habe leider festgestellt, dass die original Header-Daten in den importierten Mails fehlen.
    Kann man das noch implementieren oder mache ich etwas falsch? Ich nutze MS Windows 10 Pro 20H2 iVm. MS Outlook 2016 aus dem ProPlus-Paket.

    Antwort
  6. Bodo Eggert

    Verbessertes Script, läuft schneller und hat ein längeres Timeout falls der PC mal stockt:
    —–
    timeout = 30

    Dim objShell : Set objShell = CreateObject(“Shell.Application”)
    Dim objFolder : Set objFolder = objShell.BrowseForFolder(0, “Wählen Sie den Ordner mit den eml-Dateien aus.”, 0)

    Dim Item
    If (NOT objFolder is Nothing) Then
    Set WShell = CreateObject(“WScript.Shell”)
    Set objOutlook = CreateObject(“Outlook.Application”)
    Set Folder = objOutlook.Session.PickFolder
    If NOT Folder Is Nothing Then
    For Each Item in objFolder.Items
    If Right(Item.Name, 4) = “.eml” AND Item.IsFolder = False Then
    objShell.ShellExecute Item.Path, “”, “”, “open”, 1
    REM WScript.Sleep 1500
    REM Set MyInspector = objOutlook.ActiveInspector
    for i = 1 to timeout * 10
    WScript.Sleep 100
    Set MyInspector = objOutlook.ActiveInspector
    if not (MyInspector Is Nothing) then i = timeoput * 10
    next
    Set MyItem = objOutlook.ActiveInspector.CurrentItem
    MyItem.Move Folder
    End If
    Next
    End If
    End If

    MsgBox “Der Import ist fertig.”, 64, “Import EML”

    Set objFolder = Nothing
    Set objShell = Nothing

    Antwort

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

CAPTCHA eingeben * Das Zeitlimit ist erschöpft. Bitte CAPTCHA neu laden.