Връща стойност от тип Long, съдържаща броя знаци в низ или броя байтове, необходими за съхраняване на променлива.
Синтаксис
Len(string* | *varname)
Синтаксисът на функцията Len има следните аргументи:
| Аргумент | Описание |
|---|---|
| низ | Всеки валиден израз във формата на низ. Ако string съдържа Null, се връща Null. |
| име на променлива | Всяко име на валидна променлива. Ако името на променлива съдържа Null, се връща Null. Ако име на променлива е вариант, Len го третира като низ и винаги връща броя на знаците, които съдържа. |
Забележки
Трябва да се зададе един (и само един) от двата възможни аргумента. При дефинираните от потребителя типове Len връща размера, както ще бъде записан във файла.
Забележка
Използвайте функцията LenB за байтове данни, които се съдържат в низ, както в езиците с набори от двубайтови знаци (DBCS). Вместо да връща броя на знаците в низ, LenB връща броя байтове за представяне на този низ. При типовете, дефинирани от потребителя, LenB връща размера в паметта, включително всякакво допълване между елементите. За примерен код, който използва LenB, вижте втория пример в темата с примера.
Забележка
Len може да не успее да определи действителния брой необходими байтове за съхранение, когато се използва с низове с променлива дължина в дефинирани от потребителя типове данни.
Пример за заявка
| Израз | Резултати |
|---|---|
| SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales; | Връща стойностите от полето "ИД на продукт" и дължината на тези стойности в колоните ProductLen. |
Примери на VBA
Забележка
Примерите по-долу илюстрират използването на тази функция във Visual Basic for Applications (VBA). За повече информация относно работата с VBA изберете Справочни материали за разработчици в падащия списък до Търсене и въведете един или няколко термина в полето за търсене.
Първият пример използва Len за връщане на броя на знаците в низ или броя байтове, необходими за съхраняване на променлива.
Типът... Дефинирането на блок End Type трябва да бъде предшествано от ключовата дума "Личен", ако тя се появява в модул на клас.CustomerRecord В стандартен модул командата Type може да бъде Public.
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.
Вторият пример използва LenB и дефинирана от потребителя функция (LenMbcs) за връщане на броя на байтовете знаци в низ, ако ANSI се използва за представяне на низа.
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.