wer weis einen VBA Code um den kompleten header von email - adressen auszulesen.
(Spam usw.)
im vorraus vielen dank
heiko
Sub GrapIext()
' An den Absender Anpassen!!!
Const strAbsenderName As String = "vorname.nachname@xyz.de"
' Ende "An den Absender Anpassen!!!"
Dim objOutlook As Outlook.Application
Dim objnSpace As Outlook.NameSpace
Dim objFolder As Outlook.MAPIFolder
Dim objMsg As Object
Dim objItem As Outlook.MailItem
Dim intCounter As Integer, intCount As Integer, iRow As Integer
Dim ws As Worksheet
Dim sText As String
Application.ScreenUpdating = False
Set objOutlook = CreateObject("Outlook.Application")
Set objnSpace = objOutlook.GetNamespace("MAPI")
Set objFolder = objnSpace.GetDefaultFolder(olFolderInbox)
intCount = objFolder.Items.Count
If intCount > 0 Then
Set ws = ActiveSheet
iRow = 1
For intCounter = 1 To intCount
Set objMsg = objFolder.Items(intCounter)
If objMsg.Class = olMail Then
Set objItem = objMsg
STOP
' Hier Objekt "objItem" ansehen!!!
If UCase(objItem.SenderName) = UCase(strAbsenderName) Then
iRow = iRow + 1
ws.Cells(iRow, 1).Value = objItem.Body
End If
End If
Next intCounter
Set ws = Nothing
End If
Set objnSpace = Nothing
Set objFolder = Nothing
Set objMsg = Nothing
Set objOutlook = Nothing
End Sub
Um den vollständigen E-Mail Header auszulesen, kannst Du den folgenden VBA-Code verwenden. Dieser Code ist speziell für Outlook 2000, aber Du kannst die Objektbibliothek an Deine Version anpassen.
ALT + F11
, um den VBA-Editor zu starten.Sub GrapIext()
' An den Absender Anpassen!!!
Const strAbsenderName As String = "vorname.nachname@xyz.de"
' Ende "An den Absender Anpassen!!!
Dim objOutlook As Outlook.Application
Dim objnSpace As Outlook.NameSpace
Dim objFolder As Outlook.MAPIFolder
Dim objMsg As Object
Dim objItem As Outlook.MailItem
Dim intCounter As Integer, intCount As Integer, iRow As Integer
Dim ws As Worksheet
Application.ScreenUpdating = False
Set objOutlook = CreateObject("Outlook.Application")
Set objnSpace = objOutlook.GetNamespace("MAPI")
Set objFolder = objnSpace.GetDefaultFolder(olFolderInbox)
intCount = objFolder.Items.Count
If intCount > 0 Then
Set ws = ActiveSheet
iRow = 1
For intCounter = 1 To intCount
Set objMsg = objFolder.Items(intCounter)
If objMsg.Class = olMail Then
Set objItem = objMsg
' Hier Objekt "objItem" ansehen!!!
If UCase(objItem.SenderName) = UCase(strAbsenderName) Then
iRow = iRow + 1
ws.Cells(iRow, 1).Value = objItem.Body
End If
End If
Next intCounter
Set ws = Nothing
End If
Set objnSpace = Nothing
Set objFolder = Nothing
Set objMsg = Nothing
Set objOutlook = Nothing
End Sub
strAbsenderName
an die E-Mail-Adresse an, deren Header Du analysieren möchtest.Fehler: „Laufzeitfehler 424: Objekt erforderlich.“
Extras > Verweise
im VBA-Editor und aktiviere die entsprechende Bibliothek.Fehler: „Keine Elemente im Ordner.“
Falls Du den E-Mail Header nicht über VBA auslesen möchtest, kannst Du die Header-Daten auch manuell anzeigen:
Du kannst auch spezielle Tools verwenden, die die E-Mail Header analysieren und visualisieren.
Ein Beispiel für einen Header, den Du auslesen könntest, sieht so aus:
Return-Path: <mustermann@example.com>
Received: from mailout10.sul.t-online.com (EHLO mailout10.sul.t-online.com) [194.25.134.21]
by mx0.gmx.net (mx013) with SMTP; 29 Mar 2005 22:09:13 +0200
Mit dem oben genannten VBA-Code kannst Du solche Header-Daten in Excel importieren und weiter analysieren.
Debug.Print
Funktion, um während der Ausführung des Codes Werte im Direktfenster anzuzeigen. So kannst Du einfacher nachvollziehen, was im Code passiert.MailItem
-Objekts, um mehr Details über die E-Mail zu erhalten, z. B. objItem.Subject
für den Betreff oder objItem.Attachments
für Anhänge.1. Wie kann ich E-Mail Header auslesen, wenn ich eine andere Outlook-Version benutze? Du musst den Verweis auf die entsprechende „Microsoft Outlook Object Library“ in Deinem VBA-Editor setzen. Der Code bleibt jedoch größtenteils gleich.
2. Kann ich den Header für mehrere E-Mails gleichzeitig auslesen? Ja, passe die Schleife im VBA-Code an, um bestimmte Filter zu verwenden oder alle E-Mails im Posteingang zu durchlaufen.
3. Wo finde ich die Header-Daten, wenn ich GMX oder T-Online benutze? Die Header-Daten sind in der Regel in den E-Mail-Eigenschaften der jeweiligen E-Mail zu finden, unabhängig vom Anbieter.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen