Saltar al contenido principal

Longitud (función)

Devuelve un tipo de datos Long que contiene el número de caracteres de una cadena o el número de bytes necesarios para almacenar un variable.

Sintaxis

Len ( cadena | varname)

La sintaxis de la función largo tiene los siguientes argumentos:

argumento

Descripción

cadena

Cualquier expresión de cadena válida. Si cadena contiene un valor null, se devuelve NULL.

nombrevar

Cualquier nombre de variable válido. Si varname contiene null, se devuelve NULL. Si varname es un valor de tipo Variant, Len lo trata de la misma forma que una cadena y siempre devuelve el número de caracteres que contiene.

Observaciones

Se debe especificar uno (y solo uno) de los dos argumentos posibles. Con los tipos definidos por el usuario, largo devuelve el tamaño con el que se escribirá en el archivo.

Nota:  Use la función LARGOB con datos byte incluidos en una cadena, como en los lenguajes de juego de caracteres de doble byte (DBCS). En lugar de devolver el número de caracteres de una cadena, LARGOB devuelve el número de bytes utilizados para representar esa cadena. Con los tipos definidos por el usuario, LARGOB devuelve el tamaño de la memoria, incluido cualquier relleno entre los elementos. Para obtener un código de ejemplo que usa LARGOB, vea el segundo ejemplo en el tema de ejemplo.

Nota: Es posible que Len no pueda determinar el número real de bytes de almacenamiento necesarios cuando se usa con cadenas de longitud variable en tipos de datos definidos por el usuario.

Ejemplo de consulta

Expresión

Resultados

Seleccione IdProducto, largo (IdProducto) como ProductLen de ProductSales;

Devuelve los valores del campo "IdProducto" y la longitud de esos valores en las columnas ProductLen.

Ejemplos de VBA

Nota: En los siguientes ejemplos se muestra el uso de esta función en un módulo de Visual Basic para aplicaciones (VBA). Para obtener más información sobre cómo trabajar con VBA, seleccione Referencia del programador en la lista desplegable situada junto a Buscar y escriba uno o más términos en el cuadro de búsqueda.

En el primer ejemplo se usa Len para devolver el número de caracteres de una cadena o el número de bytes necesarios para almacenar una variable. El tipo... El bloque de tipo end que define CustomerRecord debe ir precedido de la palabra clave Private si aparece en un módulo de clase. En un módulo estándar, una instrucción Type puede 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.

En el segundo ejemplo se usa LARGOB y una función definida por el usuario (LenMbcs) para devolver el número de caracteres de byte de una cadena si se usa ANSI para representar la cadena.

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.

Nota:  Esta página se ha traducido mediante un sistema automático y es posible que contenga imprecisiones o errores gramaticales. Nuestro objetivo es que este contenido le resulte útil. ¿Podría decirnos si la información le resultó útil? Aquí puede consultar el artículo en inglés.

Vea también

Funciones de cadena y cómo usarlas

Ampliar sus conocimientos de Office
Explorar los cursos
Obtener nuevas características primero
Únase a los participantes de Office Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

Gracias por sus comentarios. Quizá le interese ponerse en contacto con uno de nuestros agentes de soporte de Office.

×