Gibt einen Wert des Typs "Long" zurück, der die Anzahl der Zeichen in einer Zeichenfolge oder die Anzahl der erforderlichen Bytes zum Speichern einer Variablen enthält.
Syntax
Len( Zeichenfolge | Variablenname)
Die Syntax der Funktion Len weist die folgenden Argumente auf:
Argument |
Beschreibung |
Zeichenfolge |
Ein beliebiger gültiger Zeichenfolgenausdruck. Wenn Zeichenfolge den Wert "Null" enthält, wird "Null" zurückgegeben. |
Variablenname |
Ein beliebiger gültiger Variable. Wenn Variablenname den Wert "Null" enthält, wird "Null" zurückgegeben. Wenn Variablenname ein Variant-Wert ist, wird er von Len wie ein Wert vom Typ String behandelt, und es wird die Anzahl der enthaltenen Zeichen zurückgegeben. |
Hinweise
Eines (und nur eines) der beiden möglichen Argumente muss angegeben werden. Bei benutzerdefinierten Typen gibt Len die Größe zurück, die in die Datei geschrieben wird.
Hinweis: Verwenden Sie die LenB-Funktion mit Bytedaten in einer Zeichenfolge, wie z. B. bei Sprachen mit Doppelbytezeichen. Anstelle der Anzahl der Zeichen in einer Zeichenfolge gibt LenB die Anzahl der Bytes zurück, mit der diese Zeichenfolge angegeben wird. Bei benutzerdefinierten Typen gibt LenB die In-Memory-Größe zurück, einschließlich Füllzeichen zwischen Elementen. Beispielcode mit LenB finden Sie im zweiten Beispiel unter dem Beispielthema.
Hinweis: Die Len-Funktion kann mitunter nicht die tatsächliche Anzahl der erforderlichen Speicherbytes ermitteln, wenn sie für Zeichenfolgen mit variabler Länge in benutzerdefinierten Datentypen verwendet wird.
Abfragebeispiel
Ausdruck |
Ergebnisse |
SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales; |
Gibt die Werte aus dem Feld "ProductID" und die Länge dieser Werte in den Spalten ProductLen zurück. |
VBA-Beispiele
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.
Im ersten Beispiel wird mit Len die Anzahl der Zeichen in einer Zeichenfolge oder die Anzahl der erforderlichen Bytes zum Speichern einer Variablen zurückgegeben. Dem Block Type...End Type, in dem CustomerRecord definiert wird, muss das Schlüsselwort Private vorausgehen, wenn er in einem Klassenmodul auftritt. In einem Standardmodul kann eine Type-Anweisung vom Typ Public sein.
Type CustomerRecord ' Define user-defined type.
ID As Integer ' Place this definition in a Name As String * 10 ' standard module. Address As String * 30 End Type Dim Customer As CustomerRecord ' Declare variables. Dim MyInt As Integer, MyCur As Currency Dim MyString, MyLen MyString = "Hello World" ' Initialize variable. MyLen = Len(MyInt) ' Returns 2. MyLen = Len(Customer) ' Returns 42. MyLen = Len(MyString) ' Returns 11. MyLen = Len(MyCur) ' Returns 8.
Im zweiten Beispiel wird mit LenB und einer benutzerdefinierten Funktion (LenMbcs) die Anzahl von Bytezeichen in einer Zeichenfolge zurückgegeben, wenn diese mit ANSI dargestellt wird.
Function LenMbcs (ByVal str as String)
LenMbcs = LenB(StrConv(str, vbFromUnicode)) End Function Dim MyString, MyLen MyString = "ABc" ' Where "A" and "B" are DBCS and "c" is SBCS. MyLen = Len(MyString) ' Returns 3 - 3 characters in the string. MyLen = LenB(MyString) ' Returns 6 - 6 bytes used for Unicode. MyLen = LenMbcs(MyString) ' Returns 5 - 5 bytes used for ANSI.