0 Then. kann ich prüfen, ob ein bestimmtes Zeichen in einer Zeichenkette vorhanden ist...." /> InStr-Funktion für mehrere Zeichen

TKSoft-Online

InStr-Funktion für mehrere Zeichen PDF Drucken E-Mail
( 1 Vote )
MS-Access Codes - Codeschnipsel Strings
  
Sonntag, den 20. Januar 2008 um 01:00 Uhr

Problemstellung:

Mit einer Abfrage wie

If InStr(strText, "-") <> 0 Then...

kann ich prüfen, ob ein bestimmtes Zeichen in einer Zeichenkette vorhanden ist.
Um auf weitere Zeichen zu prüfen,
muss ich entsprechend viele "If.. Then.. ElseIf"-Abfragen hintereinander ausführen.
Geht das auch einfacher?  
Konkret möchte ich feststellen können, ob in einer Telefonnummer die Trennzeichen "-", "/", "(" oder ")" enthalten sind.

Abhilfe schafft eine benutzerdefinierte Funktion "MultiInStr()",
die Sie in einem neuen oder einem vorhandenen Modul ablegen:


Function MultiInStr(aStr As Variant, _
                   theChars As StringAs Integer
  Dim I As Integer, Cnt As Integer

  Cnt = 0
  For I = 1 To Len(theChars)
    If InStr(aStr, Mid$(theChars, I, 1)) <> 0 Then
      Cnt = Cnt + 1
    End If
  Next I
  MultiInStr = Cnt

End Function

Aufruf:


If MultiInStr(strTelefon, "-/()")<> 0 Then

Die Funktion geht in einer Schleife alle per Parameter "theChars" spezifizierten Zeichen durch und prüft
mit der Standard-Funktion "InStr()", ob das Zeichen in der Zeichenkette gemäß "aStr" vorhanden ist.
Ist das der Fall, wird ein Zähler jeweils um eins erhöht und als Funktionsergebnis gesetzt.
Ist das Ergebnis "0", ist keines der Zeichen vorhanden, ein Ergebnis ungleich "0" zeigt an,
dass mindestens ein Zeichen in der Zeichenkette vorhanden ist.

 

DatumKlicks
Total2500
Di. 221
Mo. 213
So. 203
Sa. 193
Fr. 185
Do. 172
Mi. 164
Aktualisiert ( Freitag, den 02. Juli 2010 um 07:07 Uhr )
 

Kommentare  

 
0 # TommyK 2008-01-21 09:55
Ich finde das eine gute Lösung
Antworten | Antworten mit Zitat | Zitieren
 

Kommentar schreiben


Sicherheitscode
Aktualisieren

Login

Latest Comments

Latest Forum Posts

Mehr »

Download Statistik

41 Kategorien
187 Dateien
173415 Downloads