Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Devolve um Valor Longo contendo o número de carateres numa cadeia ou o número de bytes necessários para armazenar uma variável.
Sintaxe
Len(nome varname decadeia | )
A sintaxe da função Len tem as seguintes 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 Nulo, será devolvido Nulo . Se varname for uma Variante, Len trata-a da mesma forma que uma Cadeia e devolve sempre o número de carateres que contém. |
Comentários
Tem de especificar um (e apenas um) dos dois argumentos possíveis . Com os tipos definidos pelo utilizador, Len devolve o tamanho, uma vez que será escrito no ficheiro.
Observação
Utilize a função LenB com dados de bytes contidos numa cadeia, como em idiomas de conjunto de carateres de byte duplo (DBCS). Em vez de devolver o número de carateres numa cadeia, LenB devolve o número de bytes utilizados para representar essa cadeia. Com os tipos definidos pelo utilizador, LenB devolve o tamanho dentro da memória, incluindo qualquer preenchimento entre elementos. Para obter o código de exemplo que utiliza LenB, veja 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 utilizado com cadeias de comprimento variável em tipos de dados definidos pelo utilizador.
Exemplo
O primeiro exemplo utiliza Len para devolver o número de carateres numa cadeia ou o número de bytes necessários para armazenar uma variável. O Tipo... A definição CustomerRecord do bloco Tipo de Fim tem de ser precedida pelo palavra-chave Privado se aparecer num módulo de classe. Num módulo padrão, uma instrução Tipo 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 utiliza LenB e uma função definida pelo utilizador (LenMbcs) para devolver o número de carateres de byte numa cadeia se o ANSI for utilizado para representar a cadeia.
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.