E-Mail Adressen aus Excel - Tabelle sortieren / filtern
Hallo,
ich habe eine Exceltabelle in der Namen, Telefonnummer und E-Mail-Adressen wild durcheinander stehen.
Ich möchte jetzt nur die E-Mail-Adressen haben.
Gibt es irgendwie eine Funktion damit ich nur das "@" also die entsprechende E-Mail-Adresse filtern kann?
In Spalte A in der Zeile 1 steht z.B.:
pe_ehlers@yahoo.de Ehlers, Peter
Wie bekomme ich jetzt aus der Zeile nur die E-Mail-Adresse heraus?
4 Antworten
Versuch es einmal mit meinem Tipp
http://www.gutefrage.net/tipp/excel-e-mail-adresse-aus-zeichenkette-heraus-filtern
In deinem Fall mußt du in den Hilfsspalten "B" ein Leerzeichen für das Trennzeichen und eine 1 in "C" für die Position der E-Mail Adresse in der Zeichenkette angeben.
Im Beispiel steht in der Spalte A die Zeichenkette, aus welcher die E-Mail Adresse herausgefiltert werden soll. In Spalte B steht das Trennzeichen, welches die einzelnen Zeichenketten voneinander Trennt. Im Beispiel ist das ein Lehrzeichen und es ist zur besseren Veranschaulichung mittels der Formel =“ “ dargestellt (das Leerzeichen =Space steht zwischen den Anführungszeichen). Eine direkte Eingabe eines Leerzeichens in die Zelle würde zwar auch funktionieren, allerdings ist dann nicht sofort ersichtlich ob in die Zelle etwas eingetragen wurde (da ja ein Leerzeichen naturgemäß nicht dargestellt wird).
Die Formel mag vielleicht etwas komplex anmuten, ist aber in der Lage die eigentliche E-Mail Adresse aus verschiedenen Positionen im Text zu finden (siehe oben)
Hier die Formel, in der Annahme der String steht in A4 in Spalte B4 müßte hier der Eintag =" " stehen (zwischen den Anführungszeichen wird die Space Taste betätigt und in C5 steht eine 1, weil die E-Mail in deinem Beispiel im ersten mit "Space" abgetrennten Teil der Zeichenkette steht.
=TEIL(A4;WENN(C4=1;0;WENN(C4=2;SUCHEN(B4;A4;1);WENN(C4=3;SUCHEN(B4;A4;SUCHEN(B4;A4;1))+SUCHEN(B4;A4;1);SUCHEN(B4;A4;(SUCHEN(B4;A4;1)+SUCHEN(B4;A4;SUCHEN(B4;A4;1))+SUCHEN(B4;A4;1))))))+1;FINDEN("@";A4;1)-WENN(C4=1;1;WENN(C4=2;SUCHEN(B4;A4;1);WENN(C4=3;SUCHEN(B4;A4;SUCHEN(B4;A4;1))+SUCHEN(B4;A4;1);SUCHEN(B4;A4;(SUCHEN(B4;A4;1)+SUCHEN(B4;A4;SUCHEN(B4;A4;1))+SUCHEN(B4;A4;1))))))+WENN(C4=1;0;-1))&TEIL(A4;FINDEN("@";A4;1);(FINDEN(B4;A4;FINDEN("@";A4;1))-FINDEN("@";A4;1)))
Für dein Beispiel pe_ehlers@yahoo.de Ehlers, Peter in A1 würde auch folgende Formel funktionieren:
=LINKS(A1;FINDEN(" ";A1)-1)
Hier wird jeweils der Teil vor dem ersten Leerzeichen genommen, egal ob Mailadresse oder Telefonnummer.
Die folgende Formel findet nur Mailadressen, die vor dem ersten Leerzeichen stehen:
=WENN(ISTFEHLER(FINDEN("@";LINKS(A1;FINDEN(" ";A1)-1)));"";LINKS(A1;FINDEN(" ";A1)-1))
Du könntest mit einer Hilfsspalte operieren. Wenn die Mailadressen in A1 stehen, schreibst du zum Beispiel in B1:
=WENN(ISTFEHLER(FINDEN("@";A1;1));"Sonstige Nummer";"Mailadresse")
Nach Spalte B kannst du dann sortieren oder filtern (z.B. Autofilter). Beim Sortieren aufpassen, dass du alles markierst und nicht nur Spalte B.
Soweit ich das beurteilen kann, geht das nicht. Du kannst aber folgendes tun:Kopiere die Spalte A in eine, die du neu einfügst. In dieser löschst du dann in jeder Zeile alles, was nicht zur E-Mail-Adresse gehört. So bekommst du eine Spalte mit den E-Mail-Adressen. Wenn die Liste sehr lang ist, gibt das halt viel zu tun. Eine schnellere Methode kenne ich nicht.