Thema Datum  Von Nutzer Rating
Antwort
Rot E-Mail Syntax prüfen (ÄÖÜ)
02.12.2016 13:44:58 Matthias
NotSolved
03.12.2016 15:29:24 Gast94548
NotSolved
03.12.2016 18:46:54 Gast52632
NotSolved
04.12.2016 21:04:36 Mackie
*****
Solved
05.12.2016 08:49:27 Gast3381
NotSolved
05.12.2016 09:14:25 Gast73545
NotSolved

Ansicht des Beitrags:
Von:
Matthias
Datum:
02.12.2016 13:44:58
Views:
1301
Rating: Antwort:
  Ja
Thema:
E-Mail Syntax prüfen (ÄÖÜ)

Guten Tag,

um E-Mail-Adressen in Excel auf ihre Gültigkeit zu prüfen, verwende ich VBA Makro:

 

Public Function IsValidEMail(S)
Dim Ch As String * 1, I As Long, Ats As Long, Periods As Long
Dim LeftofAt As Boolean, IsLeading As Boolean
IsValidEMail = True
 
If IsNull(S) Then Exit Function
IsValidEMail = False
LeftofAt = True
IsLeading = True
Periods = 0
Ats = 0
For I = 1 To Len(S)
    Select Case Asc(Mid(S, I, 1))
    Case Asc("@")
      Ats = Ats + 1
      ' links vom "@" muss wenigstens ein Zeichen sein:
      If I = 1 Then Exit Function
      ' nur ein "@" erlaubt:
      If Ats > 1 Then Exit Function
      LeftofAt = False
      IsLeading = True
    Case Asc(".")
      ' Punkte rechts vom "@" zählen:
      If Not LeftofAt Then Periods = Periods + 1
      ' zu viele Punkte (technisch zwar möglich, aber unwahrscheinlich):
      If Periods > 4 Then Exit Function
      ' Top Level Domain hat weniger als 2 Zeichen:
      If I > Len(S) - 2 Then Exit Function
    Case Asc("A") To Asc("Z"), Asc("a") To Asc("z"), Asc("0") To Asc("9")
      IsLeading = False
    Case Asc("-")
      ' kein führendes "-" erlaubt:
      If IsLeading Then Exit Function
    Case Asc("_")
      ' "_" nur links vom "@" erlaubt:
      If IsLeading Or Not LeftofAt Then Exit Function
    Case Else
      ' andere Zeichen sind nicht zulässig:
      Exit Function
    End Select
Next
 
If Periods > 0 Then IsValidEMail = True
End Function

 

Dies funktioniert auch soweit. Nun sind mittlerweile die Sonderzeichen Ä,Ü,Ö ja erlaubt. Leider fehlen mir komplett das Hintergrundwissen um das Skript anzupassen. Könnte mir hier jemand helfen?

Vielen Dank!

LG, Matthias


Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:

 
 

  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
Rot E-Mail Syntax prüfen (ÄÖÜ)
02.12.2016 13:44:58 Matthias
NotSolved
03.12.2016 15:29:24 Gast94548
NotSolved
03.12.2016 18:46:54 Gast52632
NotSolved
04.12.2016 21:04:36 Mackie
*****
Solved
05.12.2016 08:49:27 Gast3381
NotSolved
05.12.2016 09:14:25 Gast73545
NotSolved