VBA Tipp: Leere Zeichenfolge in anderen Wert konvertieren

Aus DBWiki
Wechseln zu: Navigation, Suche

Anforderung

Ich möchte einem Tabellenfeld oder einer Variablen statt eines ungültigen Leerstrings (leere Zeichenfolge) einen anderen, gültigen Wert zuweisen.

Lösung

Das geht mit folgender Funktion, die in einem globalen Modul hinterlegt wird.

Public Function Lz(ByVal Wert As Variant, _
                   Optional ByVal WertFürLeer As Variant = Null _
                   ) As Variant
 
 'Quelle: www.dbwiki.net oder www.dbwiki.de
 
 If Wert = "" Then
   Lz = WertFürLeer
 Else
   Lz = Wert
 End If
 
End Function

Parameter

  • Wenn der Wert des Arguments Wert ein Leerstring (leere Zeichenfolge) ist, gibt die Lz-Funktion den Wert des Arguments WertFürLeer zurück. Ansonsten wird der Wert des Arguments Wert zurückgegeben.
  • Wenn das optionale Argument WertFürLeer nicht angegeben wurde, gibt die Funktion Null zurück.


Aufruf

'Leerstring umwandeln in 0
MeineVariable = Lz(Me!MeinFormularfeld, 0)
 
'Leerstring umwandeln in Null
MeineVariable = Lz(Me!MeinFormularfeld, Null)
 
'Leerstring umwandeln in HTML-Leerzeichen
MeineVariable = Lz(Me!MeinFormularfeld, " ")
 
'Leerstring umwandeln in Fehlertext
MeineVariable = Lz(Me!MeinFormularfeld, "Eingabe fehlt")

Wiki-Links