Tengo problemas con la función cells.find

Estuve mirando los demás post pero no consigo solucionarlo, me tira el error 91 lo siguiente:
Cells.Find(What:=Range("D2"), After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate

Les explico lo que necesito, tengo una lista de clientes bastante extensa, con sus código y datos.. Lo que necesito es poner en una casilla (D2) el nombre del cliente y al accionar la macro me lleve donde esta (igual que el ctrl B), funciona muy bien siempre que el contenido de D2 exista en la página, pero si no encuentra nada igual que el contenido de la celda me tira el error...

¿Alguno por ahí que me pueda ayudar a solucionarlo? Seguramente es un detalle que se me esta pasando.

Respuesta
1

'... Seguramente es un detalle que se me esta pasando...'

Efectivamente, activas el resultado de la búsqueda pero olvidas evaluar si se encuentra un resultado.

En mi último video (29) dejé un claro ejemplo de una búsqueda exitosa. Y en el video 16 verás más ejemplos de los errores frecuentes en el uso del Método Find. Una buena solución es la ofrecida por James, pero hay otras también.

Sdos.

Elsa

1 respuesta más de otro experto

Respuesta
2

Prueba

on error resume next

Cells.Find(What:=Range("D2"), After:=ActiveCell, LookIn:=xlFormulas, LookAt:= _
xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate

if err.number>0 then msgbox("este registro no existe"): end

on error goto 0

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas