Función InStr
Devuelve un valor Variant (Long) que especifica la posición de la primera ocurrencia de una cadena dentro de otra.
Nota:
¿Le interesa el desarrollo de soluciones que amplían la experiencia de Office en varias plataformas? Vea el nuevo modelo de complementos de Office. Los complementos de Office tienen una huella pequeña en comparación con los complementos y soluciones de VSTO, y se pueden construir utilizando casi cualquier tecnología de programación web, como HTML5, JavaScript, CSS3 y XML.
Sintaxis
InStr([ start ], string1, string2, [ compare ])
La sintaxis de la función InStr consta de los argumentos con nombre siguientes:
Parte | Descripción |
---|---|
start | Opcional. Expresión numérica que define la posición inicial de cada búsqueda. Si se omite, la búsqueda comienza en la posición del primer carácter. Si start contiene Null, se produce un error. Se requiere el argumento start si se especifica compare. |
string1 | Obligatorio. Expresión de cadena en la que se busca. |
string2 | Obligatorio. Expresión de cadena buscada. |
compare | Opcional. Especifica el tipo de comparación de cadena. Si compare es Null, se produce un error. Si compare se omite, la configuración Option Compare determina el tipo de comparación. Especifique un LCID (identificador de configuración regional) válido para usar reglas específicas de la configuración regional en la comparación. |
Configuración
La configuración del argumento compare es la siguiente.
Constante | Valor | Descripción |
---|---|---|
vbUseCompareOption | -1 | Realiza una comparación con la configuración de la instrucción Option Compare. |
vbBinaryCompare | 0 | Lleva a cabo una comparación binaria. |
vbTextCompare | 1 | Lleva a cabo una comparación textual. |
vbDatabaseCompare | 2 | Solo Microsoft Access. Realiza una comparación que se basa en la información de la base de datos. |
Valores devueltos
Si | InStr devuelve |
---|---|
string1 es de longitud cero | 0 |
string1 es Null | Null |
string2 es de longitud cero | start |
string2 es Null | Null |
string2 no se encuentra. | 0 |
string2 se encuentra dentro de string1 | Posición en la que se encuentra la coincidencia |
start>string2 | 0 |
Observaciones
La función InStrB se usa con datos de byte incluidos en una cadena. En lugar de devolver la posición del carácter de la primera ocurrencia de una cadena dentro de otra, InStrB devuelve la posición de byte.
Ejemplo
En este ejemplo, se usa la función InStr para devolver la posición de la primera ocurrencia de una cadena dentro de otra.
Dim SearchString, SearchChar, MyPos
SearchString ="XXpXXpXXPXXP" ' String to search in.
SearchChar = "P" ' Search for "P".
' A textual comparison starting at position 4. Returns 6.
MyPos = Instr(4, SearchString, SearchChar, 1)
' A binary comparison starting at position 1. Returns 9.
MyPos = Instr(1, SearchString, SearchChar, 0)
' Comparison is binary by default (last argument is omitted).
MyPos = Instr(SearchString, SearchChar) ' Returns 9.
MyPos = Instr(1, SearchString, "W") ' Returns 0.
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.