E-Mail-Adressen mit Excel prüfen 22

E-Mail-Adresse
Das Prüfen einer E-Mail-Adresse auf formale Gültigkeit ist eine komplexe Angelegenheit. Ein paar Excel-Funktionen helfen dabei.
 

Letzte Woche habe ich hier gezeigt, wie man eine einfache Pflichtfeldprüfung in Excel realisiert, so wie sie häufig in Formularen benutzt wird.

Auch diese Woche bleiben wir bei einem ähnlichen Thema:
Wie kann man mit Excel prüfen, ob in ein Formular/eine Zelle eine formal gültige E-Mail-Adresse eingegeben wurde?

Was auf den ersten Blick recht trivial aussieht, erweist sich bei näherer Betrachtung also etwas komplexer. Sei also hiermit gewarnt, wenn es gleich richtig zur Sache geht.

Und so geht’s:

Die E-Mail-Adresse

Wie eine E-Mail-Adresse grundsätzlich aussieht, davon hat jeder eine mehr oder weniger klare Vorstellung. Wie sie aber tatsächlich aussehen darf, darüber macht man sich eher selten Gedanken. Für unsere Gültigkeitsprüfung ist das aber sehr wohl wichtig.

Der technische Aufbau einer E-Mail-Adresse ist z.B. in Wikipedia nachzulesen. Wer es noch ein wenig technischer möchte, dem sei das RFC 5321 zum Simple Mail Transfer Protocol als Lektüre empfohlen.

Vereinfacht gesprochen besteht die E-Mail-Adresse aus dem sogenannten Lokalteil (also der Teil vor dem @-Zeichen) und einem Domainteil (der Teil nach dem @-Zeichen). Der Domainteil hat wiederum mindestens drei Elemente: Einen Hostnamen, einen Punkt und eine sogenannte Top-Level-Domain (kurz TLD), wie „de“ oder „com“.

Darüberhinaus gelten bestimmte Einschränkungen, was die Länge und die enthaltenen Zeichen angeht. Wir wollen uns bei der Prüfung auf die wichtigsten Elemente und Eigenschaften einer E-Mail-Adresse beschränken und die folgenden 10 Regeln überprüfen:

  1. Minimallänge der gesamten E-Mail-Adresse: 6
  2. Maximallänge der gesamten E-Mail-Adresse: 254
  3. @-Zeichen enthalten
  4. @-Zeichen nicht an erster oder letzter Stelle
  5. Kein Punkt an erster oder letzter Stelle
  6. Mindestens ein Punkt im Domaintail enthalten (und nicht unmittelbar nach dem @)
  7. Minimallänge des Lokalteils: 1
  8. Maximallänge des Lokalteils: 64
  9. Minimallänge der Top-Level-Domain (TLD): 2
  10. Nur gültige Zeichen verwendet

Eine stattliche Anzahl von Regeln, die wir nun Schritt für Schritt überprüfen wollen. Die gute Nachricht gleich vorweg: Die Beispieldatei, welche sämtliche hier vorgestellten Funktionen enthält, kannst du dir einfach hier herunterladen.

Regel 1: Minimallänge der gesamten E-Mail-Adresse

Eine E-Mail-Adresse muss mindestens 6 Zeichen lang sein. Dies ergibt sich aus den jeweils kürzest möglichen Einzelelementen (Hinweis: die TLD muss mindestens 2 Zeichen lang sein). Diese Prüfung ist mit Hilfe der LÄNGE-Funktion schnell vorgenommen. Das Ergebnis ist entweder WAHR, wenn die Minimallänge eingehalten wurde, oder FALSCH, wenn die Adresse zu kurz ist:

Regel 1: Minimallänge gesamt

Regel 1: Minimallänge gesamt

Regel 2: Maximallänge der gesamten E-Mail-Adresse

Eine E-Mail-Adresse darf insgesamt nicht länger als 254 Zeichen sein. Auch hier nutzen wir wieder die LÄNGE-Funktion:

Regel 2: Maximallänge gesamt

Regel 2: Maximallänge gesamt

Regel 3: Ist das @-Zeichen enthalten

Bekanntlich enthält jede E-Mail-Adresse den Klammeraffen. Daher benutzen wir die FINDEN-Funktion, um nach dem @-Zeichen zu suchen. Die Funktion gibt die Position an, an der sich der Klammeraffe befindet. Wird keiner gefunden, liefert die Funktion einen #WERT!-Fehler zurück. Da uns die Position nicht interessiert, sondern nur die Tatsache, ob überhaupt ein @ vorhanden ist, schließen wir das Ganze in die ISTZAHL-Funktion ein:

Regel 3: Klammeraffe vorhanden

Regel 3: Klammeraffe vorhanden

Regel 4: @-Zeichen nicht an erster oder letzter Stelle

Auch wenn das @-Zeichen vorhanden ist, darf es nicht an erster oder letzter Stelle der E-Mail-Adresse stehen. Dies prüfen wir mit Hilfe der LINKS- und RECHTS-Funktion. Die umgebende UND-Funktion liefert nur dann ein WAHR zurück, wenn beides nicht der Fall ist:

Regel 4: @ nicht am Anfang und am Ende

Regel 4: @ nicht am Anfang und am Ende

Regel 5: Kein Punkt an erster oder letzter Stelle

Analog zum @-Zeichen darf eine E-Mail-Adresse auch nicht mit einem Punkt beginnen oder enden. Die Prüffunktionen sind wieder identisch:

Regel 5: Kein Punkt am Anfang oder Ende

Regel 5: Kein Punkt am Anfang oder Ende

Regel 6: Mindestens ein Punkt im Domaintail enthalten

Jetzt wird es ein wenig spannender: Im Domainteil muss (mindestens) ein Punkt vorhanden sein, darf aber nicht unmittelbar nach dem @-Zeichen stehen. Da es auch Domains gibt, die mehr als einen Punkt enthalten, ist die Prüfung ein wenig kniffeliger:

Regel 6: Punkt im Domainteil

Regel 6: Punkt im Domainteil

Was passiert hier?

Sehen wir uns die Formel von innen nach außen an. Die innere FINDEN-Funktion liefert die Position des @-Zeichens. Dies ist wichtig, da wir ja den Punkt im Domainteil suchen – also HINTER dem @-Zeichen. Allerdings darf der Punkt nicht unmittelbar hinter diesem @-Zeichen liegen, daher addieren wir noch den Wert 2 zu dieser berechneten Position.

Die äußere FINDEN-Funktion sucht nun nach dem Punkt, beginnt bei der Suche aber an der gerade berechneten Position. Bei der Beispieladresse „ich.auch@richtig.co.uk“ beginnt die Suche also an Position 11 (@-Zeichen liegt an Position 9, dazu noch 2 addieren). Wenn dann noch ein Punkt gefunden wird, wird wieder die Position zurückgeliefert. Bei mehreren Punkten wird nur der erste berücksichtigt, was uns aber ausreicht. Im Beispiel „ich.auch@richtig.co.uk“ also die Position 17.

Und zuletzt prüft die ISTZAHL-Funktion wieder, ob überhaupt ein Punkt (und damit ein Positionswert) gefunden wurde oder ob die innere FINDEN-Funktion stattdessen schon einen #WERT!-Fehler zurückgeliefert hat.

Regel 6: Die Formel aufgedröselt

Regel 6: Die Formel aufgedröselt

Regel 7: Minimallänge des Lokalteils

Der Lokalteil – also der Teil vor dem @-Zeichen – muss mindestens 1 Zeichen lang sein. Im Umkehrschluß heißt dass, das @-Zeichen muss sich an Position 2 oder größer befinden:

Regel 7: Minimallänge des Lokalteils

Regel 7: Minimallänge des Lokalteils

Regel 8: Maximallänge des Lokalteils

Laut Regelwerk darf der Lokalteil maximal 64 Zeichen lang sein. Auch hier prüfen wir wieder den Umkehrschluß, d.h. das @-Zeichen darf höchstens an Position 65 stehen:

Regel 8: Maximallänge des Lokalteils

Regel 8: Maximallänge des Lokalteils

Regel 9: Minimallänge der Top-Level-Domain (TLD)

Die Top-Level-Domain, also der Teil nach dem letzten Punkt, muss mindestens 2 Zeichen lang sein. Hier wird die Prüfung wieder etwas komplizierter, da es auch E-Mail-Adressen mit Subdomains gibt und damit mehrere Punkte im Domainteil enthalten sein können:

Regel 9: Minimallänge der TLD

Regel 9: Minimallänge der TLD

Zerlegen wir zum besseren Verständnis dieses Formelmonster wieder in seine Bestandteile:

Bestandteile der Regelprüfung

Bestandteile der Regelprüfung

Zunächst berechnen wir die Länge der Original-E-Mail-Adresse. Im Beispiel also 14. Als nächstes entfernen wir alle Punkte mit Hilfe der WECHSELN-Funktion und ermitteln dann erneut die Länge, was in unserem Fall also 12 ergibt. 14 minus 12 = 2, somit wissen wir, dass die Adresse 2 Punkte enthält.

Dies ist wichtig, da uns ja nur der letzte (hier also der zweite) Punkt interessiert.

Jetzt kommt im Bild in Zeile 17 ein kleiner Trick:
Wir wollen nun lediglich den zweiten Punkt durch ein Sonderzeichen ersetzen. Kein Problem für die WECHSELN-Funktion. Hier kann man nämlich nicht nur angeben, was man wodurch ersetzen möchte, sondern auch ab welchem Vorkommen des gesuchten Zeichens wir mit dem Ersetzen beginnen wollen:
=WECHSELN(Text;Alter Text;Neuer Text;ntes Auftreten)

Als Sonderzeichen brauchen wir eines, welches in einer E-Mail-Adresse unzulässig ist und damit normalerweise nicht vorkommt (welche Zeichen zulässig sind, erfährst du in der 10. Regel). Ich habe mir das ASCII-Zeichen 8 ausgesucht, da man dieses schön erkennen kann: Weißer Punkt auf schwarzem Hintergrund.

Das Ergebnis sieht man im Bild oben in Zelle B17.

In der Zelle B18 prüfen wir, an welcher Position nun dieses gerade eingefügte Sonderzeichen vorkommt. In unserem Beispiel also an Position 12.

Danach stellen wir noch eine letzte Rechnung an: Ist die Gesamtlänge minus der Länge bis zum Sonderzeichen größer oder gleich 2. Mit anderen Worten: Ist der Teil hinter dem Sonderzeichen, also die TLD, länger als 2 Zeichen.

Ich weiß, das war eine knackige Prüfung, die ein wenig Hirnschmalz erfordert.

Regel 10: Nur gültige Zeichen verwendet

Die krönende Regel habe ich mir bis zum Schluß aufgehoben: Werden in der E-Mail-Adresse auch nur gültige Zeichen verwendet? Dazu muss man wissen, dass nur die ASCII-Zeichen 32 – 127 zulässig sind. Im Klartext:

A-Za-z0-9.!#$%&’*+-/=?^_`{|}~

Alle anderen Zeichen dürfen in einer E-Mail-Adresse nicht vorkommen.

Regel 10: Nur gültige Zeichen

Regel 10: Nur gültige Zeichen

Hinweis: Die in dieser Formel verwendete geniale SUMMENPRODUKT-Funktion habe ich mir nicht selbst ausgedacht, sondern auf exelformeln.de gefunden, eine Seite, die es so leider nicht mehr gibt.

Also wieder Schritt für Schritt:

SUMMENPRODUKT im Einsatz

SUMMENPRODUKT im Einsatz

In der Zeile 11 lösen wir das erste Zeichen, nämlich den Buchstaben „m“ mit Hilfe der TEIL-Funktion aus der E-Mail-Adresse heraus:
=TEIL(Text;Erstes Zeichen;Anzahl Zeichen)

Die E-Mail-Adresse hat in unserem Beispiel eine Länge von 17 Zeichen. Für den zweiten Parameter „Erstes Zeichen“ verwenden wir anstelle eines festen Wertes die ZEILE-Funktion „=ZEILE(1:17)“. Dies hat später in der SUMMENPRODUKT-Funktion den Vorteil, dass jedes einzelne der 17 Zeichen nacheinander verwendet wird.

In der Zeile 12 prüfen wir dann mit der FINDEN-Funktion, ob der Buchstabe „m“ in der Liste der erlaubten Zeichen enthalten ist. Dies ist hier der Fall, nämlich an Position 39. Dabei spielt dieser Wert für unsere Zwecke überhaupt keine Rolle, wichtig ist nur, dass überhaupt ein Wert gefunden wird.

In Zeile 13 prüft die SUMMENPRODUKT-Funktion dann das Vorhandensein jedes einzelnen Zeichens der E-Mail-Adresse in meiner Liste mit den gültigen Zeichen. Die dabei ermittelten Positionswerte ergeben in der Summe dann den Wert 801 (auch dieser Wert an sich ist nicht von Bedeutung; Hauptsache, es ist wieder überhaupt ein Wert).

In Zeile 14 prüfen wird dann, ob die SUMMENPRODUKT-Funktion überhaupt eine Zahl geliefert hat. Wenn ja, dann geben wir mit der WENN-Funktion den Wert WAHR zurück, ansonsten FALSCH.

Im Bild oben habe ich das Ganze auch nochmal in der Formelauswertung dargestellt, so dass es vielleicht ein wenig leichter nachvollziehbar wird.

Zusammenfassung

Nun haben wir also mit Hilfe von 10 Regeln die formale Gültigkeit einer E-Mail-Adresse überprüft. Erst wenn alle 10 Prüfungen den Wert WAHR ergeben, handelt es sich um eine gültige Adresse:

Zusammenfassung aller Regeln

Zusammenfassung aller Regeln

(Hinweis: In Kürze erscheint hier auf dem Blog ein ausführlicher Gastartikel zum Thema SUMMENPRODUKT).

Herzlichen Glückwunsch, wenn du bis hierher durchgehalten hast! Das war wirklich ein schönes Stück Arbeit für eine vermeintlich so einfache Angelegenheit.

Auch wenn diese Prüfung nicht 100%ig vollständig ist, sollten damit zumindest die wichtigsten Fehleingaben bei einer E-Mail-Adresse abgefangen werden.

Wenn dir der Artikel gefallen hat: Bitte weitersagen!
Das könnte dich auch interessieren:
Und immer daran denken: Excel beißt nicht!

P.S. Die Lösung ist immer einfach. Man muss sie nur finden.
(Alexander Solschenizyn)

P.P.S. Das Problem sitzt meistens vor dem Computer.



Avatar-Foto

Über Martin Weiß

Er ist das Gesicht hinter dem Blog "Der Tabellenexperte". Seit 2013 veröffentlicht er hier Beiträge zu seinem Lieblingsprogramm: Microsoft Excel. Martin Weiß ist zertifizierter Microsoft Excel Expert und verdient sein Geld als selbständiger Excel-Berater, -Entwickler und -Trainer.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

22 Gedanken zu “E-Mail-Adressen mit Excel prüfen

  • Avatar-Foto
    Andi

    @Zeile17: Weniger statisch und umständlich wäre
    =WENN(UND(B6:B15);"gültig";"ungültig")
    Bei mehr oder weniger Kriterien muss nur der Bereich „B6:B15“ angepasst werden, nicht aber die Anzahl „=10“.

    • Avatar-Foto
      Martin Weiß

      Hallo Andi,

      stimmt, die UND-Variante ist deutlich flexibler und kürzer. Danke dafür.

      Schöne Grüße,
      Martin

    • Avatar-Foto
      Ebenheimer

      Ich habe mal alle Regeln in eine große Formel gepackt. Dabei gehe ich von einer Tabelle mit vier Spalten (A-D) aus. Spalte A = Name, Spalte B = Vorname, Spalte C = Mail-Adresse, Spalte D = unsere Checker-Formel. Zeile 1 enthält die Spaltenbeschriftungen (= Kopfspalten). Das heißt, die erste zu prüfende Mail-Adresse befindet sich in Zelle D2, die nächste in D3, dann D4 und so weiter. Die Formel, die ich hier poste, wird in C2 eingetragen und dann bis zur letzten benötigten Zelle/Zeile runtergezogen. In einem weiteren Tabellen-Blatt mit dem Namen „Hilfs-Tab“ befindet sich in Zelle A2 die unerlaubten Zeichen (letzte Regel).

      Das sieht dann so aus:

      =WENN(ISTFEHLER(LÄNGE(C2)-FINDEN(ZEICHEN(8);WECHSELN(C2;“.“;ZEICHEN(8);LÄNGE(C2)-LÄNGE(WECHSELN(C2;“.“;““))))>=2);“ungültig“;WENN(UND(LÄNGE(C2)>=6;LÄNGE(C2)<=254;ISTZAHL(FINDEN("@";C2));UND(LINKS(C2;1)“@“;RECHTS(C2;1)“@“);UND(LINKS(C2;1)“.“;RECHTS(C2;1)“.“);ISTZAHL(FINDEN(„.“;C2;FINDEN(„@“;C2)+2));UND(FINDEN(„@“;C2)>1);UND(FINDEN(„@“;C2)=2;WENN(ISTZAHL(SUMMENPRODUKT(FINDEN(TEIL(C2;ZEILE($1:$255);1);’Hilfs-Tab‘!$A$2;1)));WAHR;FALSCH));“gültig“;“ungültig“))

      Die erste WENN-/ISTFEHLER-Abfrage benötige ich z.B. zur Prüfung solcher Zell-Inhalte: kino@arthaus-entenhausen,de

      • Avatar-Foto
        Ebenheimer

        Argh! Da habe ich in der Eile C und D vertauscht. Jetzt nochmals richtig:

        Dabei gehe ich von einer Tabelle mit vier Spalten (A-D) aus.
        Spalte A = Name, Spalte B = Vorname, Spalte C = Mail-Adresse, Spalte D = unsere Checker-Formel.
        Zeile 1 enthält die Spaltenbeschriftungen (= Kopfspalten).

        Das heißt, die erste zu prüfende Mail-Adresse befindet sich in Zelle C2, die nächste in C3, dann C4 und so weiter. Die Formel, die ich hier poste, wird in D2 eingetragen und dann bis zur letzten benötigten Zelle/Zeile runtergezogen.

        In einem weiteren Tabellen-Blatt mit dem Namen „Hilfs-Tab“ befindet sich in Zelle A2 die unerlaubten Zeichen (letzte Regel).

        Das sieht dann so aus:

        =WENN(ISTFEHLER(LÄNGE(C2)-FINDEN(ZEICHEN(8);WECHSELN(C2;“.“;ZEICHEN(8);LÄNGE(C2)-LÄNGE(WECHSELN(C2;“.“;““))))>=2);“ungültig“;WENN(UND(LÄNGE(C2)>=6;LÄNGE(C2)<=254;ISTZAHL(FINDEN("@";C2));UND(LINKS(C2;1)“@“;RECHTS(C2;1)“@“);UND(LINKS(C2;1)“.“;RECHTS(C2;1)“.“);ISTZAHL(FINDEN(„.“;C2;FINDEN(„@“;C2)+2));UND(FINDEN(„@“;C2)>1);UND(FINDEN(„@“;C2)=2;WENN(ISTZAHL(SUMMENPRODUKT(FINDEN(TEIL(C2;ZEILE($1:$255);1);’Hilfs-Tab‘!$A$2;1)));WAHR;FALSCH));“gültig“;“ungültig“))

        Die erste WENN-/ISTFEHLER-Abfrage benötige ich z.B. zur Prüfung solcher Zell-Inhalte: kino@arthaus-entenhausen,de

  • Avatar-Foto
    Urs Graber

    Hallo Martin
    Zuallererst möchte ich zum Ausdruck bringen, dass ich ob der aufgezeigten Lösung ziemlich beeindruckt bin!
    Kompliment dazu!
    Ich habe eine ganze Liste von E-Mail-Adressen zu überprüfen. Also z.B. von A1 bis A500. Wie könnte eine Lösung aussehen, damit ich z.B. in der Spalte B ausgeben kann, ob die E-Mail-Adresse gültig oder ungültig ist?
    Sind sämtliche 10 Regeln in eine Formel zu packen oder gibt es hierzu elegantere Lösungen?
    Herzlichen Dank für dein Feedback.
    Beste Grüsse, Urs

    • Avatar-Foto
      Martin Weiß

      Hallo Urs,

      vielen Dank für das Lob, das freut mich sehr!
      Ich persönlich würde die Regeln nicht in eine einzige Formel packen, das wird einfach zu komplex und ist zu wenig transparent. Mein Vorschlag wäre, jede Regel in eine eigene Spalte neben die E-Mail-Adressen zu packen und dann in einer zusätzlichen Spalte die Ergebnisse zusammenfassen:
      Spalte A = E-Mail-Adresse
      Spalten B – K = die 10 Prüfregeln
      Spalte L = Gesamtprüfung, ob alle einzelnen Regeln WAHR ergeben.
      Dann sieht man im Zweifel auch, wo es genau hakt.

      Schöne Grüße,
      Martin

      • Avatar-Foto
        Nico B.

        Dies dürfte wohl das Format sein, in dem die meisten Leser diese Prüfungen umsetzen wollen würden. Dafür möchte ich jedoch eine Änderung an Regel 10 empfehlen:

        =WENN(ISTZAHL(SUMMENPRODUKT(SUCHEN(TEIL(B1;ZEILE($1:$254);1);$A$3;1)));WAHR;FALSCH)
        anstatt
        =WENN(ISTZAHL(SUMMENPRODUKT(SUCHEN(TEIL(B1;ZEILE(1:254);1);A3;1)));WAHR;FALSCH)

        (wobei B1 die zu prüfende Adresse referenziert, während A3 die Kette gültiger Zeichen enthält (dazu gleich noch mehr))

        Ohne die $-Zeichen zählt Excel beim Übertragen der Formel in darunterstehende Zellen an dieser Stelle pro Zeile um 1 weiter (1:254, 2:255, 3:256 usw.), mit jeder neuen Zeile wird also erst ab der 2., 3. usw. Stelle der Mailadresse (B1) geprüft. Auch der Verweis auf A3 würde sich auf A4, A5 usw. verändern.

        Ausserdem ist in der Beispieldatei B090_E-Mail-Adresse-2.xlsx ein Fehler:
        Auf dem Tabellenblatt „Zusammenfassung“ erfolgt die Prüfung 10 (gültige Zeichen) gegen die Zelle A3 mit dem Inhalt

        ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0-9.!#$%&’*+-/=?^_`{|}~@

        Korrekt ist die Zeichefolge auf Tabellenblatt „R10a“ in Zelle A2:

        ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789.!#$%&’*+-/=?^_`{|}~@

        Ansonsten Danke für diese tolle Seite hier!
        n.

        • Avatar-Foto
          Martin Weiß

          Hallo Nico,

          vielen Dank für das Feedback und deine Ergänzungen. Und die Beispieldatei habe ich jetzt auch auf die andere Zeichenfolge angepasst.

          Schöne Grüße,
          Martin

  • Avatar-Foto
    Max Mayer

    Hallo Martin Weiß,

    vielen Dank für diesen tollen und wirklich hilfreichen Beitrag. Ich habe nur eine Sache, die ich anmerken möchte (oder die ich vielleicht nicht so ganz verstanden habe.)

    Bei Prüfung der Regeln 7 (Minimallänge des Lokalteils), 8 (Maximallänge des Lokalteils) und 9 (Minimallänge der Top-Level-Domain (TLD)) bekomme ich zum Beispiel beim Ausgangswert „MMAYER“ nicht das Ergebnis „Falsch“, sondern „#WERT“. Dieses Ergebnis wird auch in der Zusammenfassung der Prüfung übernommen. Ich habe mir nun geholfen, indem ich bei den drei betroffenen Regeln noch eine WENN()-Funktion einfüge. Bei 7 und 8 prüfe ich, ob ein „@“-Zeichen enthalten ist und bei 9 ein Punkt.

    Aber vielleicht gibt es da einen weniger komplizierten Lösungsweg?

    Über eine Rückmeldung würde ich mich daher sehr freuen.

    Viele Grüße!
    Max

    P.S: Den Newsletter werde ich abonnieren 🙂

    • Avatar-Foto
      Martin Weiß

      Hallo Max,

      ja, die Regeln 7 – 9 gehen in meinem Beispiel grundsätzlich davon aus, dass ein @-Zeichen vorhanden. Falls nicht – wie bei „MMAYER“ – kommt es zu besagtem #WERT-Fehler. Die von Dir vorgeschlagene Prüfung mit der WENN-Funktion ist somit das richtige Mittel. Etwas anderes würde ich auch nicht machen.

      Schöne Grüße,
      Martin

    • Avatar-Foto
      Antonio

      Ich habe das Ganze als mehr oder weniger kompletter Neuling verfolgt und viel gelernt. Ich fürchte, das ist in Euren Profi-Augen eine echte Anfänger-Frage, dennoch: Wie sähe das denn bei 7,8 oder 9 am Ende aus, also mit der Wenn-Bedingung?

      • Avatar-Foto
        Martin Weiß

        Hallo Antonio,

        die Regeln könnten beispielsweise so aussehen:

        Regel 7: =WENNFEHLER(UND(FINDEN(„@“;B1)>1);FALSCH)
        Regel 8: =WENNFEHLER(UND(FINDEN(„@“;B1)<=65);FALSCH) Regel 9: =WENNFEHLER(LÄNGE(B1)-FINDEN(ZEICHEN(8);WECHSELN(B1;".";ZEICHEN(8);LÄNGE(B1)-LÄNGE(WECHSELN(B1;".";""))))>=2;FALSCH)

        Also jeweils eine alles umschließende WENNFEHLER-Funktion, die statt eines Fehlerwerts eben FALSCH zurückliefert.

        Schöne Grüße,
        Martin

    • Avatar-Foto
      Martin Weiß

      Hallo Arno Nühm ;-),

      stimmt, bei Regel 7 (und auch 8) ist das UND nicht nötig.

      Schöne Grüße,
      Martin

  • Avatar-Foto
    Rainer

    Hallo Martin,
    vielen Dank für die ausführliche Prüfung, habe mich schon lange davor gedrückt in Excel.
    Mein Excel 2018 mag in Zelle A3 die Zahlen alle aufgereiht 0123456789 und nicht in regex schreibweise 0-9
    Meine Newsletterdatenbankprüfung findet bei alles WAHR noch E-Mailadressen mit ß ö
    name@domain@tld
    name.@domain.tld

    • Avatar-Foto
      Martin Weiß

      Hallo Rainer,

      ich wusste gar nicht, dass es schon Excel 2018 gibt 🙂
      Aber ich gebe zu, dass die Prüfungsregeln nicht 100%ig wasserdicht sind. Es wird immer wieder Fälle wie von Dir beschrieben geben, die durchrutschen.

      Schöne Grüße,
      Martin

  • Avatar-Foto
    Fantske

    Der Beitrag ist ja schon älter, aber weiterhin aktuell und für mich eine Goldgrube 😀
    Vielen Dank für das Teilen und auch die guten Ergänzungen der anderen Besucher:innen!

    • Avatar-Foto
      Martin Weiß

      Hallo Fantske,

      freut mich zu hören. Manche Tipps sind tatsächlich zeitlos 🙂

      Schöne Grüße,
      Martin