So exportieren Sie Informationen eingehender E-Mails automatisch in eine Excel-Datei mit Outlook VBA

Jetzt teilen:

Viele Benutzer hoffen, dass Outlook die primären Informationen eingehender E-Mails automatisch in eine Excel-Datei exportieren kann. In diesem Artikel wird diese Anforderung behandelt und eine schnelle Methode über Outlook VBA vorgestellt.

Aus bestimmten Gründen, z. B. aus der E-Mail-Statistik, müssen Sie die E-Mails manchmal in eine Excel-Datei exportieren. Im Allgemeinen können Sie für die vorhandenen empfangenen E-Mails einfach die Funktion „Importieren und Exportieren“ verwenden, um sie auf einmal nach Excel zu exportieren. Vielleicht möchten Sie jedoch sogar, dass Outlook die eingehenden E-Mails automatisch nach Excel exportiert, sobald sie in Ihrem Postfach ankommen. Ohne Zweifel gibt es in Outlook keine solche native Funktion. Daher müssen Sie andere Ansätze verwenden, z. B. ein Add-In eines Drittanbieters oder Outlook VBA. Hier erfahren Sie, wie Sie es mit Outlook VBA automatisieren. Lesen Sie weiter, um die Schritte und die entsprechenden Codes zu erhalten.

Automatischer Export von Informationen eingehender E-Mails in eine Excel-Datei

  1. Zunächst sollten Sie eine Excel-Datei erstellen.
  • Öffnen Sie eine neue Excel-Datei.
  • Dann sollten Sie "Nein" eingeben. in Zelle A1, "Absendername" in Zelle B1, "Absender-E-Mail-Adresse" in Zelle C1 und "E-Mail-Betreff" in Zelle D1 und "Empfangszeit" in Zelle E1, wie in der folgenden Abbildung dargestellt.Erstellen Sie eine Excel-Datei
  • Speichern Sie es zuletzt in Ihrem gewünschten Namen und Ordner.
  1. Danach sollten Sie Outlook starten.
  2. Drücken Sie dann die Tasten „Alt + F11“, um zum VBA-Editor zu gelangen.
  3. Als nächstes sollten Sie im Popup-Fenster auf der linken Seite auf "ThisOutlookSession" doppelklicken.
  4. Anschließend müssen Sie im Projektfenster „ThisOutlookSession“ die folgenden VBA-Codes kopieren und einfügen.
Public WithEvents objMails As Outlook.Items

Private Sub Application_Startup()
    Set objMails = Outlook.Application.Session.GetDefaultFolder(olFolderInbox).Items
End Sub

Private Sub objMails_ItemAdd(ByVal Item As Object)
    Dim objMail As Outlook.MailItem
    Dim strExcelFile As String
    Dim objExcelApp As Excel.Application
    Dim objExcelWorkBook As Excel.Workbook
    Dim objExcelWorkSheet As Excel.Worksheet
    Dim nNextEmptyRow As Integer
    Dim strColumnB As String
    Dim strColumnC As String
    Dim strColumnD As String
    Dim strColumnE As String

    If Item.Class = olMail Then
       Set objMail = Item
    End If
 
    'Specify the Excel file which you want to auto export the email list
    'You can change it as per your case
    strExcelFile = "E:\Email\Email Statistics.xlsx"
 
    'Get Access to the Excel file
    On Error Resume Next
    Set objExcelApp = GetObject(, "Excel.Application")
    If Error <> 0 Then
       Set objExcelApp = CreateObject("Excel.Application")
    End If
    Set objExcelWorkBook = objExcelApp.Workbooks.Open(strExcelFile)
    Set objExcelWorkSheet = objExcelWorkBook.Sheets("Sheet1")
 
    'Get the next empty row in the Excel worksheet
    nNextEmptyRow = objExcelWorkSheet.Range("B" & objExcelWorkSheet.Rows.Count).End(xlUp).Row + 1
 
    'Specify the corresponding values in the different columns
    strColumnB = objMail.SenderName
    strColumnC = objMail.SenderEmailAddress
    strColumnD = objMail.Subject
    strColumnE = objMail.ReceivedTime
 
    'Add the vaules into the columns
    objExcelWorkSheet.Range("A" & nNextEmptyRow) = nNextEmptyRow - 1
    objExcelWorkSheet.Range("B" & nNextEmptyRow) = strColumnB
    objExcelWorkSheet.Range("C" & nNextEmptyRow) = strColumnC
    objExcelWorkSheet.Range("D" & nNextEmptyRow) = strColumnD
    objExcelWorkSheet.Range("E" & nNextEmptyRow) = strColumnE
 
    'Fit the columns from A to E
    objExcelWorkSheet.Columns("A:E").AutoFit
 
    'Save the changes and close the Excel file
    objExcelWorkBook.Close SaveChanges:=True
End Sub

VBA-Codes - Automatischer Export von Informationen eingehender E-Mails in eine Excel-Datei

  1. Später sollten Sie diesen Code unterschreiben.
  2. Starten Sie anschließend Outlook neu, um das neue VBA-Projekt zu aktivieren.
  3. Von nun an werden alle eingehenden E-Mails automatisch in die voreingestellte Excel-Datei exportiert, sobald sie in Ihrem Posteingangsordner landen. Die Excel-Datei sieht wie folgt aus:Excel-Datei mit Informationen zu eingehenden E-Mails

Vermeiden Sie schmerzhafte PST-Datenkorruption

Outlook hat aufgrund seiner verschiedenen Funktionen viel Anerkennung verdient. Dies bedeutet jedoch nicht, dass dies kinderleicht ist. Es kann immer noch jederzeit kompromittiert werden. Wenn Sie beispielsweise Outlook häufig nicht ordnungsgemäß schließen, ist es sehr wahrscheinlich, dass Ihre PST-Daten in Gefahr geraten. In diesem Fall, wenn Sie möchten PST reparieren Daten müssen Sie auf ein erfahrenes Tool zurückgreifen, wie z DataNumen Outlook Repair.

Einführung des Autors:

Shirley Zhang ist eine Datenrettungsexpertin in DataNumen, Inc., das weltweit führend bei Datenwiederherstellungstechnologien ist, einschließlich mdf wiederherstellen und Outlook-Reparatursoftwareprodukte. Für weitere Informationen besuchen Sie www.datanumen.com €XNUMX

Jetzt teilen:

Kommentare sind geschlossen.