"Error de ejecución 91"
Resuelto
Hola a todos,
Y de antemano gracias a quienes se ocupen de mi problema, estoy a punto de llorar delante de mi pantalla o de lanzarla contra la pared... ;-)
Sigo trabajando en la concepción de la misma herramienta, avanzando lenta pero seguramente.
El problema del día: el objetivo de este código es encontrar la "Valcherchée" (concatenación de 3 celdas que se encuentran en la hoja "MàJ PA - retorno auditados") en la columna Z de la hoja "BDD résumé". He verificado mediante un MsgBox y "Valcherchée" corresponde bien a lo que busco.
A partir de ahí y de la método offset que debe apuntar a la columna G, buscar la celda que indica el número de campaña asociado a la "Valcherchée" y reemplazarla por el número ingresado en la hoja "MàJ PA - retorno auditados" (actualización del número de campaña de cada misión cada 6 meses).
Probé mi procedimiento ayer y después de un día trabajando en ello, por fin funcionaba al irme por la noche. Pero, como siempre hay un pero, esta mañana ya no funcionaba. He intentado mejorarlo según las indicaciones que encontré en línea, pero después de 3 horas no hay manera y me rindo.
Al ejecutar mi procedimiento paso a paso, se falla en la línea de "MsgBox Cellule" (agregué esta línea para intentar identificar el problema) y aparece el mensaje de error 91. No tengo un with sin end with (intenté poner uno por si acaso), mis variables están declaradas (intenté ponerlas como Variant a ver si solucionaba mi problema...), etc.
Si quito la línea de código "MsgBox Cellule", el procedimiento sigue su curso y devuelve Nothing, aparece mi MsgBox "No encontrado" y finaliza el procesamiento.
Lo que no entiendo es que mi "Valcherchée" está presente en mi columna Z.
¡Estoy que exploto! Más paciencia no tengo.
De antemano gracias por su valiosa ayuda.
Buen día a todos.
Amande42
PD: ¿cómo se formatea el código en este foro (con un marco y colores) para facilitar la lectura?
Y de antemano gracias a quienes se ocupen de mi problema, estoy a punto de llorar delante de mi pantalla o de lanzarla contra la pared... ;-)
Sigo trabajando en la concepción de la misma herramienta, avanzando lenta pero seguramente.
El problema del día: el objetivo de este código es encontrar la "Valcherchée" (concatenación de 3 celdas que se encuentran en la hoja "MàJ PA - retorno auditados") en la columna Z de la hoja "BDD résumé". He verificado mediante un MsgBox y "Valcherchée" corresponde bien a lo que busco.
A partir de ahí y de la método offset que debe apuntar a la columna G, buscar la celda que indica el número de campaña asociado a la "Valcherchée" y reemplazarla por el número ingresado en la hoja "MàJ PA - retorno auditados" (actualización del número de campaña de cada misión cada 6 meses).
Probé mi procedimiento ayer y después de un día trabajando en ello, por fin funcionaba al irme por la noche. Pero, como siempre hay un pero, esta mañana ya no funcionaba. He intentado mejorarlo según las indicaciones que encontré en línea, pero después de 3 horas no hay manera y me rindo.
Al ejecutar mi procedimiento paso a paso, se falla en la línea de "MsgBox Cellule" (agregué esta línea para intentar identificar el problema) y aparece el mensaje de error 91. No tengo un with sin end with (intenté poner uno por si acaso), mis variables están declaradas (intenté ponerlas como Variant a ver si solucionaba mi problema...), etc.
Si quito la línea de código "MsgBox Cellule", el procedimiento sigue su curso y devuelve Nothing, aparece mi MsgBox "No encontrado" y finaliza el procesamiento.
Lo que no entiendo es que mi "Valcherchée" está presente en mi columna Z.
Private Sub MAJNumCampagne() 'BUSCA CELDA CON N° CAMPAÑA CORRESPONDIENTE A LA MISIÓN SELECCIONADA EN LA HOJA "BDD résumé" Dim Valcherchée As String Dim Cellule As Range 'celda que contiene los 3 valores buscados concatenados Dim myRange As Range 'celda correspondiente al num de campaña 'Concatenación Misión + Año + Entidad a buscar With Sheets("MàJ PA - retorno audités") Valcherchée = .Range("D6").Value & .Range("G8").Value & .Range("D10").Value End With 'Activación de la celda que contiene el n° de campaña en función de la misión y asignación del número actualizado Set Cellule = Sheets("BDD résumé").Columns(26).Find(Valcherchée, Lookat:=xlWhole) MsgBox Cellule If Cellule Is Nothing Then MsgBox "No encontrado." Exit Sub End If If Not Cellule Is Nothing Then myRange = Cellule.Offset(, -19) myRange.Value = Sheets("MàJ PA - retorno audités").Range("I17").Value End If End Sub ¡Estoy que exploto! Más paciencia no tengo.
De antemano gracias por su valiosa ayuda.
Buen día a todos.
Amande42
PD: ¿cómo se formatea el código en este foro (con un marco y colores) para facilitar la lectura?
| EDITAR: Añadir las etiquetas de código (la coloración sintáctica). Explicaciones disponibles aquí: AQUÍ Gracias por tenerlo en cuenta en tus próximos mensajes. |
Enlaces relacionados:
- Error de ejecución 13 Incompatibilidad de tipo
- error de ejecución 9, el índice no pertenece a la selección
- Error de ejecución '13': Incompatibilidad de tipo
- error 13 incompatibilidad de tipo VBA excel
- Error 1004 - Error definido por la aplicación o por el objeto
- Error de ejecución 13: incompatibilidad de tipo
8 respuestas
-
Gracias por sus respuestas.
Y disculpen por la distracción, pero a quien no haya cometido un error que arroje la primera piedra.
He modificado la línea de código como ustedes lo han señalado.
Todavía no funcionaba. Después de un destello de genialidad (o no), copié los valores de mi columna Z y pegué solo los valores, no las fórmulas. Y ahora funciona.
Solo me queda modificar mi código para que en la columna Z haya solo valores de texto de manera automática y no fórmulas.
Gracias a todos por el tiempo que han dedicado a una novata despistada.
Buen día a todos.