Vlookup con error
Esta es mi primer pregunta en el foro, aunque ya me han ayudado mucho en otros problemas con macros, de los cuales ya se encontraba la respuesta...
En este caso quiero hacer un vlookup y cuando el valor no se encuentre(#N/A en excel), que me arroje "#N/A"...
El código que hice es el siguiente, pero me arroja el error 1004 - Tiempo de ejecución, "no se puede obtener la propiedad vlookup de la clase worsheetfunction...
Antes de poner el If not iserror me aparecía el error pero lo solucionaba con un 'On Error Resume Next, pero en este caso no me ponía ningún valor en la celda que no encontraba coincidencia.
¿Podrían ayudarme?
For i = 11 To ultimafila
If Left(Cells(i, 1), 9) = "MEXICOGAT" Then
equipo = Worksheets("Hoja1").Cells(i, 1).Value
With Application.WorksheetFunction
If Not IsError(.VLookup(equipo, Worksheets("Hoja2").Range("A:A"), 1, False)) Then
Cells(i, 4).Value = Application.WorksheetFunction.VLookup(equipo, Worksheets("Hoja2").Range("A:A"), 1, False)
Else
Cells(i, 4).Value = "#N/A"
End If
End With
End If
Next i
En este caso quiero hacer un vlookup y cuando el valor no se encuentre(#N/A en excel), que me arroje "#N/A"...
El código que hice es el siguiente, pero me arroja el error 1004 - Tiempo de ejecución, "no se puede obtener la propiedad vlookup de la clase worsheetfunction...
Antes de poner el If not iserror me aparecía el error pero lo solucionaba con un 'On Error Resume Next, pero en este caso no me ponía ningún valor en la celda que no encontraba coincidencia.
¿Podrían ayudarme?
For i = 11 To ultimafila
If Left(Cells(i, 1), 9) = "MEXICOGAT" Then
equipo = Worksheets("Hoja1").Cells(i, 1).Value
With Application.WorksheetFunction
If Not IsError(.VLookup(equipo, Worksheets("Hoja2").Range("A:A"), 1, False)) Then
Cells(i, 4).Value = Application.WorksheetFunction.VLookup(equipo, Worksheets("Hoja2").Range("A:A"), 1, False)
Else
Cells(i, 4).Value = "#N/A"
End If
End With
End If
Next i
1 respuesta
Respuesta de Elsa Matilde
1