Ir al contenido principal

Una alternativa a la función BUSCARV en Excel

Como seguramente sabes, la función BUSCARV es una de las funciones más utilizadas en Excel y es de gran ayuda para buscar valores dentro de una lista. Sin embargo esta función tiene una restricción que puede ponerte en aprietos.

Condición para utilizar la función BUSCARV

La condición que tenemos para utilizar la función BUSCARV es que el valor que estamos buscando debe estar en la primera columna del rango de datos y esta condición se debe de cumplir siempre. En la siguiente imagen puedes observar cómo utilizo fácilmente la función BUSCARV para encontrar el total de la factura 8975:
Una alternativa a la función BUSCARV en Excel
Sin embargo, si deseo encontrar el valor de la factura por el nombre de cliente no será posible utilizar la función BUSCARV ya que la columna Cliente no es la primera columna de la tabla. Por supuesto, una opción sería modificar la tabla de datos y mover la columna C como la primera columna, pero en ocasiones no podemos hacer dicho movimiento.
En esta ocasión te mostraré una alternativa que podemos aplicar haciendo uso de la función INDICE y de la función COINCIDIR para obtener el resultado deseado.

Función INDICE y COINCIDIR en lugar de BUSCARV

La función COINCIDIR nos devolverá la posición que tiene el valor que estamos buscando. Observa cómo utilizo dicha función para encontrar la posición del cliente “Apple”:
Función COINCIDIR en lugar de BUSCARV en Excel
La función COINCIDIR me devuelve correctamente la posición 3 para el cliente que estoy buscando.  Solamente resta utilizar la función INDICE para obtener el valor de la columna Total que le corresponde.
La función INDICE nos devuelve el valor de una celda con tan solo especificar el número de fila y de columna. Ya con la función COINCIDIR obtuvimos el número de fila que buscamos, así que solo debemos indicar la columna que necesitamos:
Función INDICE en lugar de BUSCARV en Excel
Como primer argumento de la función INDICE he colocado el mismo rango que utilicé con la función BUSCARV. El segundo argumento es el resultado de la función COINCIDIR que me devolverá la fila 3 y en el último argumento he indicado que deseo la columna 4 del rango especificado.
Con esta solución hemos creado un comportamiento similar a la función BUSCARV pero sin la restricción de tener que utilizar siempre la primera columna de la tabla.

Comentarios

Entradas más populares de este blog

Validación masiva de RFC's de contribuyentes para el CFDI 4.0

Si eres Contador o has manejado la plataforma del SAT entonces creo que estamos hablando el mismo lenguaje, y como siempre Soluciones MS Excel VBA , busca automatizar tu trabajo y que tu día sea mucho mas productivo. Te dejo un archivo de Excel en donde puedes crear el archivo de texto de forma automatizada tal cual como solicita el SAT: El funcionamiento de esta herramienta es relativamente fácil de utilizar, basta con pegar la información a partir de la celda ( B1, C1 y D1 ) , en donde la celda: B = RFC C = Nombre D = Código Postal si no cumple con uno de estos criterios, nos marca el siguiente mensaje: Cumpliendo con los criterios ya mencionados, basta con darle Click en la opción Exportar: Y de forma automática genera el archivo de texto que se llama que por default lo guarda según en donde tengas esta herramienta.   Descargar Herramienta Nota: Probablemente te aparezca algún mensaje que la macro se ha bloqueado , y para que funcione la herramienta sigue los pasos que se en...

Sumar datos filtrados

Muchas veces queremos saber el importe de datos filtrados, para eso necesitamos   la formula "SUBTOTALES" esta funcion suma solo los datos visibles ya que con la funcion SUMA extrae todos los datos filtrados. Aqui te dejo un ejemplo,espero que sea de tu utilidad. -------DLG

Asignar nombres a celdas o rangos

Asignar un nombre a un rango de celdas Estos nombres se pueden utilizar dentro de una fórmula para ayudar en la compresión de la misma posteriormente. Para asignar  un nombre a una celda sigue los siguientes pasos. Selecciona la celda o rango a la que asignarás un nombre y haz clic en el cuadro Nombre que se encuentra en el extremo izquierdo de la barra de fórmulas: Escribe el nombre que deseas y presiona Entrar. Otra manera de crear un nombre para un rango es desde la ficha Fórmulas y el botón Asignar nombre . Una vez que hayas seleccionado el rango de celdas oprime este botón y se mostrará el cuadro de diálogo Nombre nuevo : En la caja de texto Nombre coloca el nombre que asignarás a la celda o rango y oprime el botón Aceptar. Utilizar un nombre en una fórmula Como ejemplo final utilizaré el nombre que acabamos de crear dentro de una fórmula para que observes cómo Excel interpreta correctamente el nuevo nombre del rango, observa la barra de fórmul...

14 formas de acelerar y optimizar tus macros excel

Esta información es muy útil para quienes manejen el tema de  programación de macros excel.  ¿Tus macros van lentas? ¿Problemas a la hora de ejecutarlas? ¿Cuáles son las técnicas recomendadas? Cuando de  programación de macros excel  se trata, el tema de la eficiencia y la velocidad es clave. Hay 2 leyes fundamentales que hay que recordar: . a. Cuanto menos código tiene una macro mejor…¿por qué? Ayuda a que la macro se ejecute mucho más rápido Simplifica la tarea a la hora de modificar/ampliar/reparar la macro . b. Cuanto más rápido se ejecuta una macro mejor!…¿por qué? Mejora la experiencia del usuario No mantiene la PC ocupada tanto tiempo Respecto de usar menos código dependerá de las habilidades del  programador excel  en cuestión. Hemos visto infinidad de casos donde 30 o 40 líneas de código VBA se pueden resumir en 5 o 6 líneas (algo similar pasa con las fórmulas excel). Siempre hay macros o fórmulas que hacen la...