Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1176to1180
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Email rausfiltern

Email rausfiltern
Lucia
Hallo zusammen,
Ich hab eine Sache, bei der ich gerade keine elegante Lösung finde...:
Nach einem Export aus Outlook habe ich die Situation , dass der Absender der Autoreply Mail als z.B. postmaster auftritt, die eigentliche Email Adresse, an die ursächlich versendet wurde steckt in Zellen zwischen Textteilen eingeklammert durch . Diese Texte sind je nach Email System unterschiedlich, die Klammern sind aber immer gleich. Wie komme ich nun am elegantesten und schnellsten (1500 Datensätze) an diese Email Adressen?
Danke schon mal fürs mich vor dem Wahnsinn bewahren.
Lucia

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Email rausfiltern
20.09.2010 16:12:18
JogyB
Hallo Lucia,
wie genau sind die Datensätze angeordnet? Immer eine Zeile pro Mail oder anders? Steht die Adresse dort in einer beliebigen Spalte oder ist es immer dieselbe? Ist das @ in der Email-Adresse immer vorhanden?
Gruß, Jogy
AW: Email rausfiltern
20.09.2010 16:57:10
Lucia
Hi Jogi,
Eigentlich ganz simpel...
a) Immer eine zeile pro Mail
b) immer diesselbe Spalte
c) das @ ist immer vorhanden
Einzige Krux: der text drum rum ist manchmal verschieden.
Grüße,
Lucia:-)
AW: Email rausfiltern
20.09.2010 17:16:12
JogyB
Hallo Lucia,
dann ist das kein Thema. Ich nehme jetzt einfach mal Spalte F an, musst Du halt ändern. Und natürlich noch, wo die Mailadresse hingeschrieben werden soll.
Sub EmailRausfiltern()
Const mySp = 6 ' Spalte F, dort sucht das Makro
Const zielSp = 10 ' Spalte J, dort schreibt es die Email-Adresse hin
Dim zeLLe As Range
Dim regEx As Object
Dim maTches As Object
Dim mailAddy As String
Dim i As Long
Set regEx = CreateObject("VBScript.RegExp")
regEx.Pattern = "]+@[^]+>"
regEx.Global = True
' wirkt auf das aktuelle Arbeitsblatt, ggf. anpassen
With ActiveSheet
For Each zeLLe In .Range(.Cells(1, mySp), .Cells(Rows.Count, mySp).End(xlUp))
If zeLLe  "" Then
Set maTches = regEx.Execute(zeLLe.Value)
If maTches.Count > 0 Then
For i = 0 To maTches.Count - 1
mailAddy = mailAddy & IIf(mailAddy  "", ", ", "") & _
Mid(maTches(i), 2, Len(maTches(i)) - 2)
Next
zeLLe.Offset(, zielSp - mySp).Value = mailAddy
mailAddy = ""
End If
Set maTches = Nothing
End If
Next
End With
End Sub

Gruß, Jogy
Anzeige
AW: Email rausfiltern
20.09.2010 17:59:07
Lucia
Prima...wunderbar, hat geklappt!
Vielen Dank!

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige