Si necesitas localizar datos específicos en Excel, es posible utilizar el código Find, empleado para buscar valores dentro de bases de datos. En este artículo te explicamos cómo funciona esa práctica funcionalidad.
¿Cómo activar la función Find en Excel?
- Abre un documento Excel o libro (conteniendo datos).
- Pulsa Ctrl + F, atajo que en versiones de Excel anteriores a 2007 correspondería a Edición > Buscar Excel y en las posteriores a Excel 2007, sería Ficha Inicio > Buscar y seleccionar > Buscar.
© Microsoft - Escribe el valor por buscar, configura las opciones, luego haz clic en "Buscar siguiente".
¿Cuál es el código VBA correspondiente y la sintaxis que debes utilizar?
El registrador macro nos da el siguiente código (palabra buscada: "Valor"):
Cells.Find(What:="Valor", After:=ActiveCell, LookIn:=xlFormulas, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False, SearchFormat:=False).Activate
Sintaxis:
MyRange.Find(What, After, LookIn, LookAt, SearchOrder, SearchDirection, MatchCase, SearchFormat)
- MyRange: expresión que representa aquí el rango en el cuál deseas buscar el valor contenido en "What". Esto puede ser la hoja entera (Sheets(1).Cells.Find(...)), una columna (Sheets(1).Columns(3).Find(...)), una línea (Sheets(1).Rows(7).Find(....)) o un rango de celdas (Sheets(1).Range("D12:F56").Find(....)).
- What: obligatorio. De tipo variante, se trata de lo que buscas en tu rango. "What" puede ser cualquier dato que Excel es capaz de tratar.
- After: opcional. De tipo variante, indica la celda de inicio de la búsqueda. Atención esta celda debe ser única. Si "After" no es precisado, la búsqueda empieza en la esquina superior izquierda del rango.
- LookIn: opcional. De tipo variante. Busca un valor en un rango, pero podemos especificar más en cuál es contenido (Valor: LookIn: = XlValues, Formule: LookIn: = XlFormulas).
- LookAt: opcional. De tipo variante, indica si el valor encontrado debe ser rigurosamente igual al valor buscado o en parte solamente. Ejemplo, en la matriz: 6210, 4105, 540, 163, 154, 132, 10, buscas el valor 10. Para indicar a VBA que buscas exclusivamente 10, utilizarás LookAt: = XlWhole. En cambio, para indicarle que 6210 o 4105 te conviene (ambas contienen 10), utilizarás: LookAt: = XlPart.
- SearchOrder: opcional. De tipo variante. La orden de búsqueda admite una de ambas constantes: xlByRows (por líneas) o xlByColumns (por columnas).
- SearchDirection: opcional. De tipo variante. Indica el sentido de búsqueda durante la exploración de un rango. Ya sea xlNext, busca el valor siguiente en el margen o xlPrevious, busca el valor precedente.
- MatchCase: opcional. De tipo variante. Dos valores para este argumento: por defecto False y para la búsqueda respectiva destinarle el valor True.
- SearchFormat: opcional. De tipo variante. True o False según si afecta un formateado (monetario, estándar, número, bordes, relleno, alineación).
Nota: un argumento facultativo MatchByte de tipo variante, se usa si instalaste y utilizaste el control de las lenguas codificadas en dos octetos (False para que los caracteres codificados en dos octetos correspondan a sus equivalentes codificados en un octeto).
¿Cómo hacer una búsqueda múltiple?
El método FindNext y FindPrevious permiten repetir la búsqueda. Cuando la búsqueda llega al final del rango de búsqueda especificada, vuelve al principio del rango. Para detener una búsqueda cuando vuelve hasta el punto de partida, guarda la dirección de la primera celda encontrada, luego compara la dirección de cada celda encontrada con la dirección guardada.
¿Cómo funciona el método Find?
El método Find reenvía el objeto Range que representa la celda donde es encontrado el primer caso del valor buscado. Este método devuelve referencia null (Nothing en Visual Basic) si no se encuentra ninguna coincidencia. Esto es por consiguiente fuente de errores que deberás tratar. El método Find no afecta ni a la selección ni a la celda activa.
Debes saber que la configuración para LookIn, LookAt, SearchOrder y MatchByte se guarda cada vez que utilizas este método. Si no especificas ningún valor para estos argumentos durante la próxima búsqueda, los valores guardados serán utilizados. Al definir estos argumentos, se modifica la configuración en el cuadro de diálogo Buscar, lo que da por resultado cambiar la configuración guardada que son utilizados cuando no especificas los argumentos. Para evitar toda ambigüedad, define estos argumentos explícitamente cada vez que utilizas este método.
¿TIENES MÁS PREGUNTAS SOBRE Excel? ¡CONSULTA NUESTRO FORO DE DISCUSIÓN!
Excel
- Pasar datos de una hoja de Excel a otra: automáticamente...
- Colorear celdas en Excel: según valor, condición, otra celda
- Cómo mostrar filas y columnas ocultas en Excel
- Cómo convertir una columna en fila o viceversa en Excel
- Cómo cambiar el color de las celdas en Excel según la fecha
- Cómo dividir en Excel: con fórmula, por una celda fija...
- Cambiar el color del texto y celdas en Excel con fórmulas
- Cómo cambiar números por letras en las columnas de Excel
- Cómo insertar la fecha y hora en Excel: hoy, fórmulas...
- Cómo cambiar minúsculas a mayúsculas en Excel
- Cómo quitar el formato a las celdas en Excel: paso a paso
- Cómo usar SI con las funciones "Y", "O" y "No" en Excel
- Cómo unir día, mes y año en Excel
- Cómo encontrar la última fila con datos en Excel con VBA
- Cómo insertar la ruta del archivo en Excel: fácil y rápido
- Cómo poner una imagen de fondo en Excel: que se imprima...
- Cómo usar la función DATEDIF (SIFECHA en español) en Excel
- Convertir un documento de Excel a Word: sin perder formato
- Cómo insertar un GIF animado en Excel: paso a paso
- Cómo copiar el formato, color o fuente de celdas en Excel
- Celda en Excel: qué es, referencias absolutas y relativas...
- Cómo solucionar error &H80004005 (-2147467259) en Excel: VBA
- Cómo hacer un salto de línea en Excel: Mac, misma celda...
- Cuál es el límite de filas y columnas en Excel
- Las fórmulas básicas en Excel: suma, máximo y mínimo, si...
- Cómo poner una contraseña a un archivo de Excel para abrirlo
- Cómo ordenar los datos en Excel: de vertical a horizontal...
- Lista de datos en Excel: qué es, ejemplos y funciones
- Cómo cambiar el color a las etiquetas de hoja en Excel
- La interfaz de usuario en Excel: opciones, elementos...
- Insertar un comentario en Excel: con atajo del teclado, 2016
- Cómo moverse en Excel con el teclado: trucos y atajos