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.