Gibt die Zahlen zurück, die in einer Zeichenfolge als numerischer Wert des entsprechenden Typs enthalten sind.
Syntax
Val ( Zeichenfolge )
Das erforderliche ArgumentZeichenfolge ist ein beliebiger gültiger Zeichenfolgenausdruck.
Hinweise
In der Val-Funktion wird das Lesen der Zeichenfolge am ersten Zeichen angehalten, das die Funktion nicht als Bestandteil einer Zahl erkennen kann. Symbole und Zeichen, die häufig als Bestandteile numerischer Werte betrachtet werden, etwa Dollarzeichen und Kommas, werden nicht erkannt. Die Funktion erkennt jedoch die Basispräfixe &O (für oktal) und &H (für hexadezimal). Leerzeichen, Tabulatorzeichen und Zeilenvorschubzeichen werden aus dem Argument entfernt.
Der folgende Code gibt den Wert "1615198" zurück:
Val(" 1615 198th Street N.E.")
Im folgenden Code gibt Val den Dezimalwert "-1" für den gezeigten Hexadezimalwert zurück:
Val("&HFFFF")
Hinweis: Die Val-Funktion erkennt nur den Punkt (.) als gültiges Dezimaltrennzeichen. Wenn andere Dezimaltrennzeichen verwendet werden (wie in internationalen Anwendungen), verwenden Sie stattdessen CStr, um eine Zeichenfolge in eine Zahl zu konvertieren.
Abfragebeispiel
Ausdruck |
Ergebnisse |
SELECT DateofSale,val(DateofSale) AS testVal FROM ProductSales; |
Gibt die Werte aus "DateofSale" und führende numerische Zeichen aus den Werten des Felds "DateofSale" in der Spalte testVal zurück. Val() beendet das Lesen der Zeichenfolge am ersten nicht numerischen Zeichen. |
VBA-Beispiel
Hinweis: Die folgenden Beispiele zeigen die Verwendung dieser Funktion in einem VBA-Modul (Visual Basic for Applications). Wenn Sie weitere Informationen zum Arbeiten mit VBA wünschen, wählen Sie Entwicklerreferenz in der Dropdownliste neben Suchen aus, und geben Sie einen oder mehrere Begriffe in das Suchfeld ein.
In diesem Beispiel wird die Val-Funktion verwendet, um die in einer Zeichenfolge enthaltenen Zahlen zurückzugeben.
Dim MyValue
MyValue = Val("2457") ' Returns 2457. MyValue = Val(" 2 45 7") ' Returns 2457. MyValue = Val("24 and 57") ' Returns 24.