Share via


Función Mid

Devuelve un valor Variant (String) que contiene un número especificado de caracteres de una cadena.

Sintaxis

Mid(string, start, [ length ])

La sintaxis de la función Mid consta de los argumentos con nombre siguientes:

Parte Descripción
string Obligatorio. Expresión de cadena que devuelve caracteres. Si string contiene Null, se devuelve Null.
start Obligatorio; Long. Posición del carácter en string en la que comienza la parte que se desea. Si start es mayor que el número de caracteres de string, Mid devuelve una cadena de longitud cero ("").
length Opcional; Variant (Long). Número de caracteres que se devuelven. Si se omite o hay menos caracteres length en el texto (incluido el carácter de start), se devuelven todos los caracteres desde la posición start hasta el final de la cadena.

Observaciones

Para determinar el número de caracteres en string, use la función Len.

Nota:

Use la función MidB con datos de byte incluidos en una cadena, como en los lenguajes de conjunto de caracteres de doble byte. En lugar de especificar el número de caracteres, los argumentos especifican el número de bytes. Para el ejemplo de código que usa MidB, vea el segundo ejemplo del tema de ejemplo.

Ejemplo

En el primer ejemplo, se usa la función Mid para devolver un número especificado de caracteres de una cadena.

Dim MyString, FirstWord, LastWord, MidWords
MyString = "Mid Function Demo"    ' Create text string.
FirstWord = Mid(MyString, 1, 3)    ' Returns "Mid".
LastWord = Mid(MyString, 14, 4)    ' Returns "Demo".
MidWords = Mid(MyString, 5)    ' Returns "Function Demo".

En el segundo ejemplo, se usa MidB y una función definida por el usuario (MidMbcs) que también devuelven caracteres de la cadena. La diferencia es que la cadena de entrada es ANSI y la longitud es en byte.

Function MidMbcs(ByVal str as String, start, length)
    MidMbcs = StrConv(MidB(StrConv(str, vbFromUnicode), start, length), vbUnicode)
End Function

Dim MyString
MyString = "AbCdEfG"
' Where "A", "C", "E", and "G" are DBCS and "b", "d", 
' and "f" are SBCS.
MyNewString = Mid(MyString, 3, 4)
' Returns "CdEf"
MyNewString = MidB(MyString, 3, 4)
' Returns "bC"
MyNewString = MidMbcs(MyString, 3, 4)
' Returns "bCd"

Vea también

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.