Перейти к основному контенту
Поддержка
Войдите с помощью учетной записи Майкрософт
Войдите или создайте учетную запись.
Здравствуйте,
Выберите другую учетную запись.
У вас несколько учетных записей
Выберите учетную запись, с помощью которой нужно войти.

Возвращает значение типа Long, содержащее число символов в строке или число байт, которое требуется для хранения переменной.

Синтаксис

Len( строка | имя_переменной)

Функция Len имеет следующие аргументы:

Аргумент

Описание

строка

Любое допустимое строковое выражение. Если строка содержит значение NULL, возвращается NULL.

имя_переменной

Любое допустимое имя переменная. Если в варнаме содержится значение NULL, возвращается значение NULL. Если варнаме является variant, Len обрабатывает его так же, как строка , и всегда возвращает количество символов, содержащихся в нем.

Замечания

Необходимо указать один (и только один) из двух возможных аргументов. Для пользовательских типов функция Len возвращает размер, записываемый в файл.

Примечание:  Используйте функцию LenB для работы с содержащимися в строке байтами, например, в языках с двухбайтовыми кодировками (DBCS). Функция LenB возвращает не число знаков в строке, а количество байтов, используемых для отображения этой строки. При использовании с данными пользовательского типа функция LenB возвращает размер этих данных в памяти, включая интервалы между элементами. Образец программы с использованием функции LenB приведен во втором примере.

Примечание: С помощью функции Len не всегда возможно определить фактическое количество байтов, необходимых для хранения данных, если эти данные представляют собой строки переменной длины с пользовательским типом данных.

Пример запроса

Expression

Результаты

SELECT ProductID, Len(ProductID) AS ProductLen FROM ProductSales;

Возвращает значения из поля ProductID и длину этих значений в столбцах ProductLen.

Примеры VBA

Примечание: В примерах ниже показано, как использовать эту функцию в модуле Visual Basic для приложений (VBA). Чтобы получить дополнительные сведения о работе с VBA, выберите Справочник разработчика в раскрывающемся списке рядом с полем Поиск и введите одно или несколько слов в поле поиска.

В первом примере с помощью функции Len возвращается число знаков в строке или количество байтов, необходимых для хранения переменной. Перед блоком Type...End Type, определяющим тип CustomerRecord, должно стоять ключевое слово Private, если он включен в модуль класса. В стандартном модуле оператор 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.

Строковые функции и их использование

Нужна дополнительная помощь?

Нужны дополнительные параметры?

Изучите преимущества подписки, просмотрите учебные курсы, узнайте, как защитить свое устройство и т. д.

В сообществах можно задавать вопросы и отвечать на них, отправлять отзывы и консультироваться с экспертами разных профилей.

Были ли сведения полезными?

Насколько вы удовлетворены качеством перевода?
Что повлияло на вашу оценку?
После нажатия кнопки "Отправить" ваш отзыв будет использован для улучшения продуктов и служб Майкрософт. Эти данные будут доступны для сбора ИТ-администратору. Заявление о конфиденциальности.

Спасибо за ваш отзыв!

×