Returnerar ett värde av datatypen Long som innehåller antalet tecken i en sträng eller antalet byte som krävs för att lagra en variabel.
Syntax
Längd( sträng | varname)
Syntaxen för funktionen Längd har följande argument:
Argument |
Beskrivning |
sträng |
Giltiga stränguttryck. Om sträng innehåller Null, returneras Null. |
var_namn |
Ett giltigt variabel namn. Om varname innehåller Null, returneras Null. Om varnamn är en variant behandlar Längd den på samma sätt som en sträng och returnerar alltid antalet tecken som den innehåller. |
Kommentarer
Ett (och endast ett) av de två möjliga argumenten måste anges. Med användardefinierade typer returnerar Längd storleken som den skrivs till filen.
Obs!: Använd funktionen LängdB med bytedata som finns i en sträng, som i DBCS-språk (Double-Byte Character Set). I stället för att returnera antalet tecken i en sträng returnerar LängdB antalet byte som används för att representera strängen. Med användardefinierade typer returnerar LängdB minnesstorleken, inklusive utfyllnad mellan element. Exempelkod som använder LängdB finns i det andra exemplet i exempelavsnittet.
Obs!: Längd kanske inte kan fastställa det faktiska antalet lagringsbyte som krävs när det används med strängar med variabel längd i användardefinierade datatyper.
Frågeexempel
Uttryck |
Resultat |
SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales; |
Returnerar värdena från fältet "ProductID" och längden på dessa värden i kolumnerna ProductLen. |
VBA-exempel
Obs!: I exemplen nedan visar vi hur du använder den här funktionen i en Visual Basic for Applications-modul (VBA). Om du vill läsa mer om hur man använder VBA, kan du välja Info för utvecklare i listrutan bredvid Sök och sedan skriva en eller flera söktermer i sökrutan.
I det första exemplet används Längd för att returnera antalet tecken i en sträng eller antalet byte som krävs för att lagra en variabel. Typ ... End Type-block som definierar CustomerRecord måste föregås av nyckelordet Privat om det visas i en klassmodul. I en standardmodul kan ett Type-uttryck vara Offentligt.
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.
I det andra exemplet används LenB och en användardefinierad funktion (LenMbcs) för att returnera antalet bytetecken i en sträng om ANSI används för att representera strängen.
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.