Búsqueda vertical
Resuelto
Marc
-
Marc -
Marc -
Hola a todos,
Me gustaría hacer un Vlookup en VB dentro de un bucle Do Until.
Mi archivo de Excel tiene varias hojas
El vlookup será en la hoja llamada test
i es un contador en la hoja "test".
He intentado la siguiente sintaxis:
Cells(i,8)= Application.WorksheetFunction.VLookup(Cells(i,3),Sheets("Input").Range("A:A","AO:AO"),3,False)
Desafortunadamente, no funciona. Creo que está relacionado con el segundo argumento de la función...
Muchas gracias por su ayuda.
Me gustaría hacer un Vlookup en VB dentro de un bucle Do Until.
Mi archivo de Excel tiene varias hojas
El vlookup será en la hoja llamada test
i es un contador en la hoja "test".
He intentado la siguiente sintaxis:
Cells(i,8)= Application.WorksheetFunction.VLookup(Cells(i,3),Sheets("Input").Range("A:A","AO:AO"),3,False)
Desafortunadamente, no funciona. Creo que está relacionado con el segundo argumento de la función...
Muchas gracias por su ayuda.
Enlaces relacionados:
- Fórmula de Excel: contar el número de valores diferentes
- Verificar si un elemento pertenece a una lista
- Excel: si mi celda contiene tal texto o tal texto
- [Excel] Verificar existencia de celdas de la columna A en la columna C
- verificar si un valor está en un rango
- Fórmula de Excel: "SI" una celda contiene una palabra, entonces ?
2 respuestas
Hola,
ejemplo con tratamiento de error si no se encuentra:
ejemplo con tratamiento de error si no se encuentra:
Sub test1()
If Not IsError(Application.VLookup(Cells(i, 3), Sheets("Input").Range("A:C"), 3, False)) Then
y = Application.VLookup(Cells(i, 3), Sheets("Input").Range("A:C"), 3, False)
ElseIf Not IsError(VLookup(Cells(i, 3), Sheets("Input").Range("AO:AQ"), 3, False)) Then
y = Application.VLookup(Cells(i, 3), Sheets("Input").Range("AO:AQ"), 3, False)
Else
y = "No Encontrado"
End If
Cells(i, 8) = y
End Sub