Cómo Hacer Una Búsqueda VBA en Excel

Última actualización:

¿Te gustaría saber cómo hacer una búsqueda VBA en Excel? ¿Quién no conoce el método FIND (Buscar) en Excel? Es seguro que muchas personas que usan hojas de cálculo de Excel usen el método BUSCAR o usan los atajos de tecla Ctrl + F para encontrar la palabra o el contenido que estén buscando.

Pero, ¿Sabías que existe otro medio de búsqueda para encontrar por rangos, celdas y columnas? Sí, cuando dice encontrar significa que esta opción está centrada en celdas y rangos. El método para hacer una búsqueda correcta es conocido como VBA en Excel.

De manera similar, en la función VBA Find, encontrarás una opción llamada función FIND que puede ayudarte a encontrar el valor que estés buscando. Ahora, para aprender todo esto, hemos preparado para ti un tutorial para aprender hacer una búsqueda VBA en Excel.

Aquí puedes leer sobre: Consejos Para Boom Beach – Estrategias De Ataque

Fórmula para encontrar la función VBA en Excel

Cuando estas trabajado en una hoja de Excel normalmente para hacer una búsqueda usas el atajo de tecla Ctrl + F para encontrar lo que estás buscando. Pero en con para hacer una búsqueda VBA en Excel, necesitarás escribir una función para encontrar el contenido que estés buscando. Bien, veamos entonces como es la sintaxis del método FIND (búsqueda).

Fórmula para encontrar la función VBA en Excel
Fórmula para encontrar la función VBA en Excel

Aunque te sientas que estás perdido al ver esta sintaxis y no entiendes nada. No debes preocuparte, porque te explicaremos a fondo de que trata la sintaxis, en este ejemplo del cuadro de búsqueda normal.

Fórmula para encontrar la función VBA en Excel

Si miras de cerca el atajo de teclas Ctrl + F normalmente es idéntica a la sintaxis de búsqueda VBA. Ahora veamos lo que significa cada palabra en la sintaxis.

  • Qué:es básicamente lo que quieres buscar. Aquí debes mencionar el contenido que estés buscando.
  • Después:después de qué celda quieres buscar.
  • LookIn:dónde buscar lo que quieres conseguir.
    • Por ejemplo: fórmulas, valores o comentarios. Los parámetros son xlFormulas, xlValues, xlComments.
  • LookAt:si estás buscando todo el contenido o solo una parte del contenido. Los parámetros son xlWhole, xlPart.
  • SearchOrder:¿Está buscando en filas o columnas? puedes usar xlByRows o xlByColumns.
  • SearchDirection:¿Está desplazándote por la celda siguiente o la celda anterior? xlNext, xlPrevious.
  • MatchCase:el contenido que estás buscando diferencia las mayúsculas y minúsculas con sentencias Verdaderas o falsas.
  • MatchByte:esto es solo para los idiomas de doble byte. con sentencias de Verdadero o falso.
  • SearchFormat:aquí se usa para buscar por formato. Si estás buscando formato, debes usar el método FindFormat.

Esta es la explicación de la sintaxis del método hacer una búsqueda VBA en Excel. Aparte del primer parámetro, todo es opcional. En la sección de ejemplos, te mostraremos cómo utilizar este método de búsqueda en la codificación VBA.

¿Cómo utilizar la función de búsqueda de Excel VBA?

Aprenderemos cómo usar una función de VBA Find Excel con algunos ejemplos.

Función para hacer una búsqueda VBA en Excel: ejemplo 1

Ahora, te explicaremos un ejemplo muy sencillo de hacer una búsqueda VBA en Excel usando la propiedad FIND para encontrar el contenido que estés buscando. Vamos a suponer que a continuación se encuentran los datos que tienes en tu hoja de Excel. Solo sigue estos pasos:

Ejemplo
Lista de Datos de Ejemplo
  • Paso 1: A partir de aquí, debes encontrar el nombre John, abres un Visual Basic para comenzar la codificación con los siguientes parámetros:
    • Código:
    • Sub Find_Ex1 ()
    • End Sub
Visual Basic
Visual Basic
  • Paso 2: Aquí no puedes comenzar la palabra ENCONTRAR, porque ENCONTRAR es parte de la propiedad RANGO. Entonces, en primer lugar, debes mencionar dónde estás buscando, es decir, el Rango.
ENCONTRAR
ENCONTRAR en el Rango
  • Paso 3: Primero debes mencionar el rango donde estás buscando. En este ejemplo, el rango es de B2 a B11.
    • Código:
    • Sub Find_Ex1 ()
    • Rango («B2: B11»)
    • End Sub
B2 a B11.
B2 a B11.
  • Paso 4:Después de mencionar el rango, coloca un punto (.) Y escribe FIND. Deberías ver la propiedad FIND (Buscar).
(.)
(.) Find
  • Paso 5: Selecciona la propiedad ENCONTRAR y abre el corchete.
ENCONTRAR
ENCONTRAR
  • Paso 6: el primer argumento es lo que estás buscando. Para resaltar el argumento puedes pasar el argumento de la siguiente manera Qué: =,esto sería útil para identificar a qué parámetro se está refiriendo.
    • Código:
    • Sub Find_Ex1 ()
    • Rango («B2: B11»). Buscar (Qué: = «Juan»)
    • End Sub
Qué: = "Juan"
Qué: = «Juan»
  • Paso 7:La parte final es después de encontrar la palabra qué quieres hacer. Necesitarás seleccionar la palabra, así que pasa el argumento como. Seleccione.
    • Código:
    • Sub Find_Ex1 ()
    • Rango («B2: B11»). Buscar (Qué: = «John»). Seleccionar
    • End Sub
B2: B11"
B2: B11 Select
  • Paso 8: luego ejecuta este código usando la tecla F5 o manualmente como se muestra en la figura, para que selecciones la primera palabra encontrada Johnson que contiene una palabra,
tecla F5
tecla F5

Función para hacer una búsqueda VBA en Excel: ejemplo 2

Ahora te mostraremos cómo encontrar la palabra de comentario usando el método de búsqueda. Aquí hay datos y en tres celdas hay un comentario. Las celdas que tienen bandera roja tienen comentarios. A partir de este comentario, buscaremos la palabra «Sin comisión».

Lista de datos
Lista de datos
  • Paso 1:Comienza el código mencionando el rango («D2: D11») y pon un punto (.) Y escribe Buscar
    • Código:
    • Sub Find_Ex2 ()
    • Rango («D2: D11»). Encuentra (
    • End Sub
Buscar
Buscar
  • Paso 2:En el argumento QUÉ, escribe la palabra «Sin comisión».
    • Código:
    • Sub Find_Ex2 ()
    • Rango («D2: D11»). Buscar (Qué: = «Sin comisión»,
    • End Sub
(Qué: = "Sin comisión",
(Qué: = «Sin comisión»,
  • Paso 3: ignora la parte Después y selecciona la parte LookIn. En LookIn, estarás buscando esta palabra en los comentarios, así que selecciona xlComments y luego pasa el argumento como .Select
    • Código:
    • Sub Find_Ex2 ()
    • Rango («D2: D11»). Buscar (Qué: = «Sin comisión», LookIn: = xlComments) .Seleccionar
    • End Sub
Seleccionar
Qué: = «Sin comisión», LookIn: = xlComments
  • Paso 4: Ahora ejecuta este código usando la tecla F5 o manualmente como se muestra en la figura para que selecciona la celda que tiene el comentario «Sin comisión». En la celda D9 tendrás un comentario mencionado.
"Sin comisión"
«Sin comisión»

Tratar con valores de error en Excel VBA Find

Si la palabra que estás buscando no se encuentra en el rango, con este código VBA te proporciona una búsqueda más exacta que devolverá un error como este.

Tratar con valores de error en Excel VBA Find

Para mostrarte a ti que el valor que estás buscando no está disponible, Necesitarás el siguiente código.

Cómo Hacer Una Búsqueda VBA en Excel

Si el código anterior encontró un valor, entonces muestra el valor y la dirección de la celda o, de lo contrario, mostrará el mensaje «¡El valor que está buscando no está disponible en el rango proporcionado!».

Función Excel VBA Buscar

Cuando usamos Buscar en una hoja de trabajo normal, presionamos el atajo de teclado CTRL + F y escribimos los datos que necesitarás encontrar y si no el valor deseado, pasamos a la siguiente coincidencia, si hay muchas coincidencias de este tipo, es una tarea tediosa, pero cuando usamos la función FIND en VBA, hace las tareas por nosotros y nos da la coincidencia exacta y se necesitan tres argumentos, uno es que encontrar, dónde encontrar y dónde mirar.

Antes de pasar a VBA y comenzar a usar la función de búsqueda en macros, primero debes aprender qué es una función de búsqueda en Excel. En Excel normal, en la pestaña Inicio en el grupo de edición, puedes encontrar una función de búsqueda que se usa para encontrar una cadena o un valor en un rango de celdas o una hoja de trabajo completa.

pestaña Inicio
pestaña Inicio

Cuando hacemos clic en esto, obtenemos dos opciones;

Uno es simple de encontrar

pestaña Inicio

Puedes ver que también tiene un modo de opciones que abre otra característica.

pestaña Inicio
Otras características

Realiza el algoritmo de búsqueda con cuatro restricciones, Buscar qué, Dentro, Buscar y Encontrar.

La segunda opción en Excel es Buscar y reemplazar que se usa cuando encontramos una cadena pero qué reemplazarla con cualquier otro valor,

Cómo Hacer Una Búsqueda VBA en Excel

Buscar sintaxis de funciones

Hemos aprendido más arriba lo que es hacer una búsqueda VBA en Excel. En VBA, puedes escribir códigos manualmente, pero las características son las mismas que las de Excel normal. Primero, veamos la sintaxis.

  • Find (Qué, buscando,….)

Si el valor que estás buscando se encuentra con la función de Excel, devuelve la celda donde está el valor, y si no se encuentra el valor, entonces el objeto de la función se establece en nada.

Las expresiones en macros son rangos definidos, como rango 1 o rango 2. ¿Qué es una palabra clave para lo que quieres buscar para un valor específico? Lookin es una palabra clave para lo que estás tratando de buscar, ya sea un comentario, una fórmula o una cadena.

De manera similar, existen otras restricciones en la función Buscar, que son opcionales. El único campo obligatorio es el valor que estás intentando buscar.

Básicamente, VBA encuentra que Excel tiene un argumento requerido, que es Qué valor quieres buscar. El resto de las restricciones son opcionales y hay muchas prohibiciones en la función de búsqueda. La función de FIND es similar a la función de búsqueda en Excel.

Ejemplos para hacer una búsqueda VBA en Excel

El parámetro para la función de búsqueda es el rango de celdas, como en qué rango quieres encontrar un valor. Pueden ser unas pocas columnas o pocas celdas o una hoja de trabajo completa. Veamos estos ejemplos:

Ejemplo 1

Supón que tus datos tienen los siguientes valores

Tabla de valores
Tabla de valores

Aquí intentaremos encontrar “Aran” en los mismos datos.

  • Paso 1: Para escribir un código VBA, es necesario tener habilitada la pestaña de desarrollador en Excel para poder escribir códigos VBA.
pestaña de desarrollador
pestaña de desarrollador
  • Paso 2: Comienza escribiendo el código como se muestra a continuación:
    • Sub Muestra ()
    • Dim encuentra como secuencia
    • Dim Rng Como Rango
    • encuentra = InputBox ( “Introduzca el valor que desea buscar”)
    • Con Sheets ( “Sheet1”) .Range ( “A: A”)
“Introduzca el valor que desea buscar”
“Introduzca el valor que desea buscar”
  • Paso 3: La muestra es el nombre de la función que se le da al sub.
  • Paso 4: Busca la cadena que quieres que busque el usuario que queremos que ingrese.
  • Paso 5: Rng es la variable que tomaremos para el rango.
  • Paso 6: Ahora le pedimos al usuario que ingrese el valor que se parece a la captura de pantalla a continuación:

“Introduzca el valor que desea buscar”

  • Paso 7: Ahora define la función de búsqueda en el módulo.
definiendo la función
definiendo la función
  • Paso 8: La función encuentra el valor ingresado por el usuario en el rango dado.
  • Paso 9: Ahora cierras la función con los siguientes argumentos.

definiendo la función

  • Paso 10: Ahora, si ejecutas el código primero, el usuario solicitará un valor.
Solicitud de valores
Solicitud de valores
  • Paso 10: Una vez que se completa el código, devuelve la celda donde se encontraron los datos.

Ejemplo 2

En el ejemplo anterior, había cuatro nombres únicos, pero ¿qué pasaría si hubiera más de un nombre en los datos, como por ejemplo, considera los datos a continuación?

imagen

Puedes ver que el nombre Aran se repite dos veces en los datos anteriores. Si Excel tiene que encontrar el nombre Aran, lo encontrará en la celda A2 y se detendrá, pero hay otro valor similar al de A2 en la celda A6. ¿Cómo recuperar ese valor? Aquí viene la sintaxis de Find (What, After) en la ayuda.

Después de definir la celda, después de qué referencia, quieres buscar los datos. Escribe el código para los datos anteriores.

  • Paso 1: Recuerda siempre habilitar la pestaña de desarrollador desde las opciones y luego desde la personalización de la cinta en Excel para poder escribir el código en VBA.
  • Paso 2: En VBA, obtendrás objetos de Microsoft Excel, que es un módulo donde escribes los códigos.
Find (What, After)
Lista de datos
  • Paso 3: Anteriormente estabas trabajando en la hoja 1; ahora, estás trabajando en la hoja 2, así que selecciona la hoja 2 para otro módulo y aparecerá una página en blanco.
Find (What, After)
Find (What, After)
  • Paso 4: Ahora comienza a escribir el código definiendo la función primero como SUB Sample2 () y presiona ENTER.
SUB Sample2 ()
SUB Sample2 ()

NOTA: Ahora habrás definido la función; comenzarás a entrar en la parte principal, que es la definición de nuestras variables.

SUB Sample2 ()

  • Paso 5: Define qué debe tener la variable Find,
variable Find
variable Find
  • Paso 6: Selecciona las hojas en las que estás trabajando, que es la hoja 2 en este ejemplo:
variable Find
variable Find
  • Paso 7: Ahora encontrarás el texto que ingresa el usuario después de la celda A2, por lo que debes definir tu función de búsqueda como se muestra a continuación:
celda A2
celda A2
  • Paso 8: Ahora cierra el código terminando las condiciones with e if.
with e if
with e if

Lo que hace el código anterior es buscar la cadena después de la celda A2 y devolver la celda donde sea que se encuentre.

También te puede interesar: Cómo Mejorar Tú Experiencia En Excel – 13 Útiles Consejos

Como verás, estas son las formas de hacer una búsqueda VBA en Excel. Cada ejemplo te puede servir a futuro para que en cada práctica vayas perfeccionando el uso de esta función en tus proyectos de Excel. Esperamos haberte ayudado.

Deja un comentario