Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Email aus Text auslesen
#1
Hallo Ihr alle!

Hoffe Ihr seid gesund und munter ...

Ich habe eine Liste mit Text in Spalte A in jeweils einer Zelle (A1, A2 usw.)

In den meisten Texten (nicht allen) befinden sich eine (oder mehrere) Email Addressen.

Die meisten Email Addressen befinden sich am Ende des jeweiligen Textes.

Da es sich um internationale Freemail und Business Email Adressen handelt, ist der Aufbau der jeweiligen Email Addresse immer etwas unterschiedlich:

xxx.xxx@gmail.com
xxx@x-xxx.de
xxx@xxx.org
xxx-xxx-xxx@xxx-xxx.com 
usw.

Allen gleich ist natürlich das @ in der Mitte und jeweils ein Leerzeichen vor und hinter der Email Adresse.

Da mich die (soweit mehrere vorhanden) letzte Email im Text am meisten interessiert, könnte man von hinten suchen und (nur) die erste Email die gefunden wird auslesen.

Da es sich um sensible Daten in den Texten handelt, kann ich euch leider keine Originalbeispiele zum Testen zur Verfügung stellen:

Ich habe aber eine neutralisierte Liste angehängt, mit und ohne Email im Text.

Freue mich über eure Vorschläge

Danke und Gruss

Michael


Angehängte Dateien
.xlsx   Email aus text auslesen.xlsx (Größe: 8,77 KB / Downloads: 8)
Antworten Top
#2
Sad 
B1: =SVERWEIS("*@*";LET(
x;XMLFILTERN("<a><b>"&WECHSELN(A1;" ";"</b><b>")&"</b></a>";"//b");
y;ZEILEN(x);
INDEX(x;SEQUENZ(y;;y;-1)));1;)


Der XMLFILTERN-Teil wurde von shift-del gefunden.

Das Beispiel mit mehreren EMAILs musste ich mir übrigens selbst einbauen.

EDIT: sigi hat recht, hier für xl2013 (ohne LET und SEQUENZ):

B1: =SVERWEIS("*@*";INDEX(
XMLFILTERN("<a><b>"&WECHSELN(A1;" ";"</b><b>")&"</b></a>";"//b");ZEILEN(
XMLFILTERN("<a><b>"&WECHSELN(A1;" ";"</b><b>")&"</b></a>";"//b"))+1-ZEILE(INDIREKT("1:"&ZEILEN(
XMLFILTERN("<a><b>"&WECHSELN(A1;" ";"</b><b>")&"</b></a>";"//b")))));1;)
[-] Folgende(r) 1 Nutzer sagt Danke an LCohen für diesen Beitrag:
  • echo
Antworten Top
#3
Hallo Michael,

ich fürchte deine xl-Versionen 2013/17 kennen diese neuen Funktionen von LCohen, shift-del noch nicht.
Für "altes" Excel kannst du meine VBA-Fkt. hernehmen. (s. Mappe)

Gruß Sigi


Angehängte Dateien
.xlsm   Email auslesen.xlsm (Größe: 18,27 KB / Downloads: 4)
[-] Folgende(r) 1 Nutzer sagt Danke an Sigi.21 für diesen Beitrag:
  • MichaelH
Antworten Top
#4
Hi!

Wenn ich die Formel =

=SVERWEIS("*@*";LET(x;XMLFILTERN(""&WECHSELN(A1;" ";"")&"";"//b");y;ZEILEN(x);INDEX(x;SEQUENZ(y;;y;-1)));1;)

in B1 der B2 usw.  einfüge steht da nur #NAME?
Antworten Top
#5
Habs oben korrigiert für Dein xl2013. 

XMLFILTERN übrigens seit xl2013. Und, etwas teuflisch: xlWeb kennt zwar LET+SEQUENZ, aber nicht XMLFILTERN.
Antworten Top
#6
Hi ...

... kommt bei immer noch #NAME?
Antworten Top
#7

.xlsx   Email aus text auslesen.xlsx (Größe: 12,11 KB / Downloads: 3)

Es gibt kein Excel 2017. Meinst Du etwa 2007?
Antworten Top
#8
Hallo zusammen,
habe mal ein wenig "rumgespielt" und versucht das mit meinem (2019er) Excel zu lösen:
Code:
=WENNFEHLER(TEIL(A1;FINDEN("#";WECHSELN(A1;" ";"#";FINDEN("@";A1)-LÄNGE(WECHSELN(TEIL(A1;1;FINDEN("@";A1));" ";""))))+1;FINDEN(" ";TEIL(A1;FINDEN("#";WECHSELN(A1;" ";"#";FINDEN("@";A1)-LÄNGE(WECHSELN(TEIL(A1;1;FINDEN("@";A1));" ";""))))+1;99)));"")

In der Beispiel-Datei sind die Einzelschritte erkennbar
Gruß Holger

PS

Zitat:ich fürchte deine xl-Versionen 2013/17 kennen diese neuen Funktionen von LCohen, shift-del noch nicht.

Habe ich versucht einzufügen, leider nur NV bzw. Name


Angehängte Dateien
.xlsx   Email aus text auslesen.xlsx (Größe: 17,8 KB / Downloads: 2)
[-] Folgende(r) 1 Nutzer sagt Danke an echo für diesen Beitrag:
  • MichaelH
Antworten Top
#9
Excel 2007

Wenn ich Deine Liste öffne, stehen in Spalte F die Emailadressen (soweit vorhanden).

Wenn ich weitere Texte in Spalte A hinzufüge und die Formel in Spalte F dementsprechend verlängere steht da wieder nur #NAME?

Hallo Holger,

Deine Formel klappt prima

Hallo Siggi,

Deine übrigens auch
Antworten Top
#10
Tja, ist halt doof, wenn man noch nicht einmal seine Version richtig hinterlegt. Mit 2013 (die nennst Du auch) sollte es gehen, weil XMLFILTERN dort vorhanden ist. Also hast Du eben mit 2007 wieder falsch geantwortet.

OK, ich habe beim ersten Versuch ja auch nicht aufgepasst.
[-] Folgende(r) 1 Nutzer sagt Danke an LCohen für diesen Beitrag:
  • MichaelH
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste