Função Len
Retorna um Long que contém o número de caracteres em uma cadeia de caracteres ou o número de bytes necessários para armazenar uma variável.
Sintaxe
Len(string | varname)
A sintaxe da função Len tem estas partes:
Sair | Descrição |
---|---|
cadeia de caracteres | Qualquer expressão de cadeia de caracteres válida. Se a cadeia de caracteres contiver Null, Null será retornado. |
nomedavariável | Qualquer nome de variável válido. Se varname contiver Null, Null será retornado. Se varname for uma Variant, Len o tratará da mesma forma que uma Cadeia de Caracteres e sempre retornará o número de caracteres que ele contém. |
Comentários
Um (e apenas um) dos dois argumentos possíveis deve ser especificado. Com tipos definidos pelo usuário, Len retorna o tamanho, pois ele será gravado no arquivo.
Observação
Use a função LenB com dados de bytes contidos em uma cadeia de caracteres, como em idiomas DBCS (conjunto de caracteres de byte duplo). Em vez de retornar o número de caracteres em uma cadeia de caracteres, LenB retorna o número de bytes usados para representar essa cadeia de caracteres. Com tipos definidos pelo usuário, o LenB retorna o tamanho na memória, incluindo qualquer preenchimento entre elementos. Para obter o código de exemplo que usa o LenB, consulte o segundo exemplo no tópico de exemplo.
Observação
Len pode não ser capaz de determinar o número real de bytes de armazenamento necessários quando usados com cadeias de caracteres de comprimento variável em tipos de dados definidos pelo usuário.
Exemplo
O primeiro exemplo usa Len para retornar o número de caracteres em uma cadeia de caracteres ou o número de bytes necessários para armazenar uma variável. O Tipo... A definição CustomerRecord
do bloco de tipo final deve ser precedida pela palavra-chave Private se ela aparecer em um módulo de classe. Em um módulo padrão, uma instrução Type pode ser Pública.
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.
O segundo exemplo usa LenB e uma função definida pelo usuário (LenMbcs) para retornar o número de caracteres de bytes em uma cadeia de caracteres se ANSI for usado para representar a cadeia de caracteres.
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.
Confira também
Suporte e comentários
Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.