Macros en excel

18/04/2008 - 10:34 por Ira | Informe spam
Hola,

Tengo una macro en excel que funciona perfectamente en todos los pcs menos
en dos.
Les he instalado todas las actualizaciones del office pero no va. He vuelto
a reinstalar office y tampoco. Estoy usando excel 2000.

La macro es esta:

Private Sub Worksheet_Activate()
With Sheets("Introducción Datos")
LblFecha.Caption = .Range("Fecha")
LblNPedido.Caption = .Range("NPedido")
LblCliente.Caption = .Range("Cliente")
LblMaxCarga1.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga2.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga3.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga4.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga5.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga6.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga7.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga8.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga9.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCargaModulo.Caption = .Range("MaxCargaCalle") & " kg" & vbCrLf &
"MAX. CARGA CALLE"
LblAlturaNivel1.Caption = .Range("AlturaNivel1") & " mm"
LblAlturaNivel2.Caption = .Range("AlturaNivel2") & " mm"
LblNNiveles.Caption = "NIVEL " & .Range("NNiveles")
End With
End Sub

Y en los dos pcs que no me funcionan en la 3 linea me aparece 'No se
requiere el objeto'.
Los archivos son los mismos para todos porque están en una carpeta en red.

¿Alguna idea?.

Gracias
 

Leer las respuestas

#1 Héctor Miguel
22/04/2008 - 00:38 | Informe spam
hola, (...) ???

-Si suprimo la línea 3, falla la 4, si suprimo la 4, falla la 5.
-En las referencias del vba, está todo como en otros pcs que si funciona.
- El mensaje es exactamente el siguiente:
Se ha producido el error '424' en tiempo de ejecucion:
Se requiere un objeto
Alguna pista mas?



1) es diferente el mensaje de error en esta ampliacion de detalles:
"... error '424' en tiempo de ejecucion: Se requiere un objeto"
del que habias comentado inicialmente: "... No se requiere el objeto" :-((

2) me parece un poco "raro" el codigo que expones (trato de explicarme)...
a) esta en el evento de activacion de alguna hoja (seria conveniente si comentas "el nombre" de esa hoja)
b) haces referencia a rangos en la hoja "introduccion de datos" para actualizar la propiedad ".Caption" de...
c) mencionas objetos cuyos nombres inician con "Lbl" (como si se tratara de controles Label de UserForms)

3) si el mensaje "dice" que "SE REQUIERE UN OBJETO", cabe la posibilidad de que "el objeto" no este presente o visible -???-
pero NO mencionas si se trata de algun formulario de usuario ni el porque del evento '_activate' en alguna hoja -???-

creo que existe aun alguno que otro detalles "en el tintero", asi que...
si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.


__ las consultas anteriores __
Tengo una macro en excel que funciona perfectamente en todos los pcs menos en dos.
Les he instalado todas las actualizaciones del office pero no va.
He vuelto a reinstalar office y tampoco. Estoy usando excel 2000. (...)
Y en los dos pcs que no me funcionan en la 3 linea me aparece 'No se requiere el objeto'.
Los archivos son los mismos para todos porque están en una carpeta en red.
Alguna idea?...



en las pc's donde falla este codigo...

- si suprimes la linea 3... el resto de lineas se ejecutan sin problema ???

- revisa en el editor de vba, desde (menu) herramientas / referencias
si existe alguna marcada como FALTA:xxx o MISSING:xxx

- tambien podrias comentar (de preferencia +/- exactamente) el numero y texto completo del mensaje del error

__ el codigo expuesto __
La macro es esta:
Private Sub Worksheet_Activate()
With Sheets("Introducción Datos")
LblFecha.Caption = .Range("Fecha")
LblNPedido.Caption = .Range("NPedido")
LblCliente.Caption = .Range("Cliente")
LblMaxCarga1.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga2.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga3.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga4.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga5.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga6.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga7.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga8.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCarga9.Caption = .Range("MaxCarga") & " kg" & vbCrLf & "MAX"
LblMaxCargaModulo.Caption = .Range("MaxCargaCalle") & " kg" & vbCrLf & "MAX. CARGA CALLE"
LblAlturaNivel1.Caption = .Range("AlturaNivel1") & " mm"
LblAlturaNivel2.Caption = .Range("AlturaNivel2") & " mm"
LblNNiveles.Caption = "NIVEL " & .Range("NNiveles")
End With
End Sub

Preguntas similares