Zwraca wartość typu liczba długa zawierającą liczbę znaków w ciągu lub liczbę bajtów wymaganych do przechowania zmiennej.
Składnia
Len(ciąg* | *nazwa_zmiennej)
W składni funkcji Dł występują następujące argumenty:
| Argument | Opis |
|---|---|
| ciąg | Dowolne prawidłowe wyrażenie ciągu. Jeśli ciąg zawiera wartość Null, funkcja zwraca wartość Null. |
| nazwa_zmiennej | Dowolna prawidłowa nazwa zmiennej. Jeśli zmienna varname zawiera wartość Null, funkcja zwraca wartość Null. Jeśli nazwa_zmiennej jest wartością typu wariant, funkcja Len traktuje ją tak samo jak ciąg i zawsze zwraca liczbę zawartych w niej znaków. |
Uwagi
Należy określić jeden (i tylko jeden) z dwóch możliwych argumentów. W przypadku typów zdefiniowanych przez użytkownika funkcja Len zwraca rozmiar, który zostanie zapisany w pliku.
Uwaga
Użyj funkcji LenB z danymi bajtowymi zawartymi w ciągu, jak w językach zestawu znaków dwubajtowych (DBCS). Zamiast zwracać liczbę znaków w ciągu, funkcja DŁ.B zwraca liczbę bajtów reprezentujących ten ciąg. W przypadku typów zdefiniowanych przez użytkownika funkcja LenB zwraca rozmiar w pamięci, w tym wszelkie dopełnienia między elementami. Przykładowy kod używający funkcji LenB można znaleźć w drugim przykładzie w przykładowym temacie.
Uwaga
Funkcja Len może nie być w stanie określić rzeczywistej liczby bajtów magazynowania wymaganych w przypadku użycia z ciągami o zmiennej długości w typach danych zdefiniowanych przez użytkownika.
Przykład kwerendy
| Wyrażenie | Rezultat |
|---|---|
| SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales; | Zwraca wartości z pola "ProductID" i długość tych wartości w kolumnach ProductLen. |
Przykłady języka VBA
Uwaga
Poniższe przykłady przedstawiają sposób użycia tej funkcji w module języka Visual Basic for Applications (VBA). Aby uzyskać dodatkowe informacje na temat pracy w języku VBA, wybierz pozycję Dokumentacja dewelopera z listy rozwijanej obok przycisku Wyszukaj i wprowadź odpowiednie terminy w polu wyszukiwania.
W pierwszym przykładzie użyto funkcji Dł w celu zwrócenia liczby znaków w ciągu lub liczby bajtów wymaganych do przechowywania zmiennej.
Typ... Definiowanie bloku typu końcowego musi być poprzedzone słowem kluczowym Prywatne, jeśli jest ono wyświetlane w module klasy.CustomerRecord W module standardowym instrukcja Type może być publiczna.
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.
W drugim przykładzie użyto funkcji LenB i funkcji zdefiniowanej przez użytkownika (LenMbcs) w celu zwrócenia liczby znaków bajtów w ciągu, jeśli funkcja ANSI jest używana do reprezentowania ciągu.
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.