Os quiero presentar otra variante de la función VLOOKUP / BUSCARV de Excel donde podemos añadir hasta dos condiciones para la búsqueda. Es un BUSCAR condicionado.
Con esta función podremos realizar una búsqueda sobre una columna y establecer una condición adicional sobre otra columna antes de obtener el resultado.
Pincha en la imagen para ver más detalles del libro
Ejemplo de función Excel BUSCARV condicionado
Si queremos buscar el resultado de buscar el valor 2 con la condición C, sería como resultado el valor "Verde":
Col_Búsqueda | Col_Condición | Col_Resultado |
1 |
A | Azul |
2 |
B |
Rojo |
2 |
C |
Verde |
2 |
D |
Amarillo |
3 |
E |
Negro |
Para poder hacer eso, necesitamos implementar una función excel nueva desde el editor de visual basic que incorpora microsoft office.
La función sería:
'VLOOKUP que busca en función del valor de una segunda columna
'col_resultado = numero de la columna resultado a devolver
'col_cond = numero de la columna sobre la que hacemos la condicion
'col_valor = valor que buscamos de la columna anterior
Function VLOOKUP_cond(valor_buscar As Variant, rango As Range, col_resultado As Integer, col_cond As Variant, col_valor As Variant)
Dim CurCell As Variant
For Each f In rango.Rows
If (f.Cells(0, 1).Value = valor_buscar And f.Cells(0, col_cond) = col_valor) Then
CurCell = f.Cells(0, col_resultado)
Exit For
End If
Next f
VLOOKUP_cond = CurCell
End Function
Para poder usarla tenemos que poner en cualquier celda la siguiente fórmula:
=VLOOKUP_cond(A3;A:B;3;2;"C");
Esto debería devolvernos el valor Verde.
Herramienta ExcelFIX
Repara tus archivos Excel en menos de 15 minutos y recupera tu información fácilmente. Pruébalo GRATIS.
- Garantía de devolución completa si no consigues reparar tu archivo
- Repara en menos 15 de minutos
- Soporte técnico gratuito
- Herramienta recomendada por Microsoft
- Disponible versión de prueba
Si te ha parecido interesante, pincha en la imagen para acceder a la versión de muestra que podrás descargar gratuitamente. Si decides comprarlo, me estarás ayudando a mantener el blog para poder seguir escribiendo artículos como este. Muchas gracias.