Una manera fácil de entender cómo encontrar texto con VBA es mediante el uso de grabadora de macros de Excel para crear estados de VBA del uso del comando " Buscar " de la pestaña "Inicio " . Escriba texto en una celda de hoja de cálculo, como por ejemplo " abc ", haga clic en cualquier otra célula . Haga clic en el botón "Grabar" de la pestaña " desarrolladores" y pulse las teclas " F", "Control" y al mismo tiempo para que aparezca el cuadro de diálogo del programa "Buscar" . Escriba algunos caracteres en el texto escrito en la celda. Haga clic en " Buscar " para desplazarse a la celda, haga clic en el botón " Detener grabación" en la pestaña de " desarrollador " para finalizar la grabación de la macro .
Leyendo las declaraciones Macro
< p> una vez que haya grabado una macro VBA para la búsqueda de texto, empezar a entender cómo funciona leyendo las instrucciones de programación . Mostrar la lista de macros en el libro actual haciendo clic en el botón " Macros " de la pestaña " desarrolladores" , a continuación, haga clic en el nombre de la macro de búsqueda de texto . Por ejemplo , haga clic en " TextFinder " si ese es el nombre de la macro , haga clic en el botón "Editar " para mostrar las instrucciones de programación VBA para " TextFinder . "
La función Buscar
VBA Busca texto en las celdas de la hoja de trabajo actual con la función "Buscar ", que es miembro de la colección " células " . Esta colección representa las celdas en la hoja de cálculo actual . Usted puede obtener una buena comprensión de los argumentos que necesita esta función mediante el examen de las declaraciones de una macro que busca texto . Si ha grabado una macro que busca el texto " abc ", la macro aparecerá algo como lo siguiente :
Sub FindText ()
Cells.Find (What : = " abc" , After: = ActiveCell , LookIn : = xlFormulas , LookAt : = _
xlPart , SearchOrder : = xlByRows , SearchDirection : = xlNext , MatchCase : = False _
, SearchFormat : = False ) . Activar
End Sub
los argumentos
el "qué" argumento de la VBA comando " Buscar " que busca el texto, sostiene el texto que desea buscar . Excel buscará cualquier texto que especifique en este argumento. "Qué" es el único argumento de que el comando "Buscar " requiere . Todos los argumentos son opcionales . Por tanto, puede buscar el texto " abc ", por ejemplo , con la afirmación " Cells.Find (What : =" abc ") . . Activa Si usted necesita " Buscar " para que coincida con un caso específico para el" texto What " , indica que al establecer el argumento " MatchCase " en "True ". Este argumento es " falso " por defecto.
Valor devuelto y Navegación
el comando "Buscar" para la búsqueda de texto con VBA no navegar automáticamente a las celdas que contienen el texto que está buscando . para hacer ello, utilice el método de " Activate" del valor de retorno de "Buscar ". Ese valor de retorno es un "Range " objeto que representa las celdas en las que " Buscar "que se encuentra el texto que estaba buscando . por ejemplo , si usted ha buscado " abc " a " Buscar ", y sólo una célula tenía ese texto, el valor de retorno de" Buscar " sería un rango de una sola célula . Correr esa función "Activar" de la célula hará esa celda de la celda activa .