Beispiele für Zeichenkettenfunktionen = Stringfunktionen
VBA bietet eine Vielzahl von Funktion zur Bearbeitung von Zeichenketten (Strings). Im Wesentlichen dienen sie der Stringverarbeitung, -addition und - formatierung. Alle Funktionen sind in der VBA-Hilfe unter Visual Basic - Sprachverzeichnis / Funktionen alphabethisch geordnet dokumentiert. Die VBA-Hilfe erreicht man aus dem VBA-Editor - bitte nicht mit der Access-Hilfe verwechseln. Sehr bequem ist es, falls man sich zwar an den Namen, aber nicht an alle Details der Funktion erinnert, die Funktion aufzuschreiben, zu markieren und mit F1 die entsprechende Hilfe aufzurufen. F1 funktioniert (fast) überall im Entwurfsmodus.
Stringverarbeitung
Funktionen zur Stringverarbeitung dienen dem Auslesen, Bearbeiten, Formatieren von ganzen Strings (Zeichenketten), deren Teilen, bestimmten Zeichen oder Positionswerten.
Beispiele
Dim iAnzahlBuchstaben as Integer
iAnzahlBuchstaben = Len(Nachname)
Die Funktion Len (kurz für englisch Lenght) liefert die Anzahl der Zeichen des Feldes Nachname und übergibt das Ergebnis an die Variable iAnzahlBuchstaben.
Dim strInitialen as String
strInitialen = Mid(Vorname,1,1) & Mid(Nachname,1,1)
Die Funktion Mid liefert einen Teil einer Zeichenkette, dessen Anfang und Länge durch Zahlen angegeben werden. Im Beispiel wird die Funktion zweimal benutzt, um die Anfangsbuchstaben des Vor- und des Nachnamens zu Initialen zusammenzusetzen.
Stringaddition
Funktionen zur Stringaddition gibt es nur zwei, aber sie sind sehr wichtig, da häufig benötigt. In der Regel addiert man Strings per kaufmännischem Und , also mit &. Das Pluszeichen kann, aber sollte nicht verwendet werden, um Verwechslungen mit der Rechenoperation zu vermeiden.
Beispiel
Dim strA as String, strB as String
strA = "Und"
strB = "tschüss ..."
MsgBox strA & " " & strB
In der Messagebox würde "Und tschüss ..." angezeigt werden. Die beiden Anführungszeichen mit dem Leerzeichen dazwischen sorgen dafür, dass nicht "Undtschüss..." angezeigt wird, da durch das &-Zeichen die tatsächlich ausgelesenen Strings übergeben werden - also ohne Leerzeichen (wollte man per Stringaddition eine Zahl zusammensetzen, wären automatisch eingefügte Leerzeichen auch fatal).
Wohl der häufigste Fall der Stringaddition ist die Ausgabe von Namen, die normalerweise nach Nach- und Vorname getrennt sind, aber in der Form [Nachname, Vorname] ausgegeben werden sollen. Angenommen, die Daten kommen aus den Feldern Nachname und Vorname, dann lautet die Additionsanweisung in etwa (man müsste noch auf die Datenquelle verweisen):
Dim strName as String
strName = Nachname & ", " & Vorname
Beachten Sie bitte, dass Strings an Variablen übergeben werden können und diese wiederum mit Strings und Variablen verkettet werden können. Wichtig ist, dass man Zeichenketten in Anführungszeichen setzen muss. Variablen hingegen brauchen keine Anführungszeichen.
Stringformatierung
Formatierungfunktionen dienen - wie der Name sagt - der Formatzuweisung: bestimmte Datums-, Währungs-, Zahlenformate usw. Im Grunde nicht schwer, man vergisst nur immer wieder die Syntax. Also Hilfe benutzen.