Error de ejecución 91 en Excel/VBA
Resuelto
maxbvs
Mensajes publicados
2
Fecha de registro
Estado
Miembro
-
Thierry17 -
Thierry17 -
Hola,
Después de ejecutar una macro, obtengo el "famoso" error de ejecución 91
Aquí está el código marcado que podría ser la causa del error:
Cells.Find(What:=pprod, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
"pprod" está declarado correctamente antes,
¿Alguien puede ayudarme ???????
Gracias de antemano
MaXBvs
Después de ejecutar una macro, obtengo el "famoso" error de ejecución 91
Aquí está el código marcado que podría ser la causa del error:
Cells.Find(What:=pprod, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Activate
"pprod" está declarado correctamente antes,
¿Alguien puede ayudarme ???????
Gracias de antemano
MaXBvs
Configuración: Windows XP Firefox 2.0.0.11
Enlaces relacionados:
- Error 1004 de VBA
- "El índice no pertenece a la selección" + VBA
- Error de ejecución 13 Incompatibilidad de tipo
- error de ejecución 9, el índice no pertenece a la selección
- Error 1004 - Error definido por la aplicación o por el objeto
- Variable de objeto o variable de bloque no definida: Error de ejecución 91
2 respuestas
hola
Has intentado usar una variable objeto que tiene el valor Nothing.
Eso es lo que dice la documentación y de hecho suele suceder al usar "find".
Creo que se debe al hecho de usar activate porque no puedes seleccionar lo que no has encontrado.
Personalmente, posiciono un objeto rango y pruebo el nothing antes de usarlo.
set sel = Cells.Find(What:=pprod, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
if sel is nothing then
código no encontrado
else
sel.select
endif
--
siempre zen
Has intentado usar una variable objeto que tiene el valor Nothing.
Eso es lo que dice la documentación y de hecho suele suceder al usar "find".
Creo que se debe al hecho de usar activate porque no puedes seleccionar lo que no has encontrado.
Personalmente, posiciono un objeto rango y pruebo el nothing antes de usarlo.
set sel = Cells.Find(What:=pprod, After:=ActiveCell, LookIn:=xlFormulas, _
LookAt:=xlWhole, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False)
if sel is nothing then
código no encontrado
else
sel.select
endif
--
siempre zen
Thierry17
Gracias por tu código, sigue siendo válido, incluso 11 años después ;-)