extraño error, no dimensiona automaticamente las variables en algunos pc

07/09/2005 - 11:10 por .·:m·a·r·l·a:·. | Informe spam
Hola a todos:

estoy creando un pequeño archivo en excell que incluye macros, lo he provado
a mandar a algunos de los usuarios para testear, y en algunos de ellos la
aplicacion falla

exactamente fallan todas aquellos procedures (sub) que contienen variables,
pero se soluciona si las declaro

el error que me da (en este caso desde un usuario frances) ::

Erreur de compilation :

Project ou bibliotheque introuvable

es eso normal ??
como puedo evitarlo sin tener que declarar todas las variables y usar
declaracion dinamica ??


gracias por adelantado

Preguntas similare

Leer las respuestas

#11 .·:m·a·r·l·a:·.
07/09/2005 - 13:22 | Informe spam
entonces, aqui un ejemplo de codigo que falla

Sub input03_update()
ActiveSheet.Unprotect
Application.ScreenUpdating = False

'copia las aplicaciones (level 1-3) desde la hoja 1 a la 3
var_column = 10
For var_row = 17 To 2016
If Sheet_input01.Cells(var_row, 2) > 0 And Sheet_input01.Cells(var_row,
2) < 4 Then
Sheet_input03.Cells(6, var_column) = Sheet_input01.Cells(var_row, 2)
Sheet_input03.Cells(7, var_column) = Sheet_input01.Cells(var_row, 3)
Sheet_input03.Cells(8, var_column) = Sheet_input01.Cells(var_row, 4)
Sheet_input03.Cells(9, var_column) = Sheet_input01.Cells(var_row, 9)
Sheet_input03.Cells(10, var_column) = Sheet_input01.Cells(var_row,
10)
var_column = var_column + 1
End If
Next var_row

'añade una columna con todo 0 para delimitar ultima
Sheet_input03.Cells(6, var_column) = 0
Sheet_input03.Cells(7, var_column) = 0
Sheet_input03.Cells(8, var_column) = 0
Sheet_input03.Cells(9, var_column) = 0

ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True _
, AllowSorting:=True
ActiveSheet.EnableSelection = xlNoRestrictions
Application.ScreenUpdating = True
End Sub


te mando tambien adjunto una serie de imagenes:
error1 - error que da al intentar ejecutar dicha pieza de codigo
error2 - despues de dar ok, se puede ver resaltada la primer variable
error3 - dimensiono la variable y pulso f5, el error aparece de nuevo
error4 - despues de ok, se puede ver resaltada la segunda variable

trate de enviar las imagenes adjuntas pero no me deja, las coloque en :
http://www.megaupload.com/?
http://www40.megaupload.com/files/8...errors.zip



como imaginaras, si todas la piezas de codigo fueran asi de sencillas no
tendria problema de
hacer declaracion explicita, pero otras partes son bastantes mas largas y
utilizan variables auxiliares que no tiene por que siempre declararse de la
misma forma (variable internas en bucles)


temo que tenga algo que ver con el idioma (( puede ser ?? )), pues varios
usuarios en francia lo han intentado correr y siempre falla (( wxp,
office2000, office2003 )), yo trabajo con wxp, office2003 version en ingles


gracias por todas las molestias


"KL" wrote in message
news:
Hola,

Ya te he dicho la informacion que necesito para intentar ayudarte. Si
quieres, espera a que aparezca alguien que lo pueda hacer en base a la
informacion que has proporcionado hasta este momento.

Saludos,
KL


".·:m·a·r·l·a:·." wrote in message
news:
> si quieres publico el codigo, pero las macros solamente hacen formateo


de
> celdas/columnas... y copia de datos de unas hojas a otras
>
> en el pc frances, cuando da el error colorea el primer uso de la primer
> variable, si entonces en tiempo de ejecucion añado la linea de


declaracion
> de esa variable, el error vuelve a dar pero colorea la segunda variable
>
> alguno de los procedures he declarado por completo y es entonces cuando
> funciona, pero son muchos procedures como para poner a declarar todas


las
> variables en todos ellos
>
> es hay donde mi duda reside, donde se modifican el entorno de VBA,


puesto
> que en ambos pc es el mismo y sin embargo algunos siguen dando el


problema
>
> "KL" wrote in message
> news:
>> Hola,
>>
>> En este sentido la realidad estaba bastante clara desde tu primer
>> mensaje.
>> Ahora solo falta que accedas a publicar el codigo por un lado, y por


otro
>> que el usuario en Francia vaya al Editor VBA, menu
> Herramientas>Referencias
>> y busque el(los) nombre(s) de la(s) biblioteca(s) precedida(s) de
>> MISSING:
>> (o el equivalente frances) :-)
>>
>> Saludos,
>> KL
>>
>>
>> ".·:m·a·r·l·a:·." wrote in message
>> news:eyY%
>> > gracias por responderme tan rapido, ya me he leido el articulo, pero


la
>> > realidad es tal que :
>> >
>> > - mi pc, las macro funcionan, la casilla no esta marcada :: ok
>> > - el pc de mi cliente, la casilla NO esta marcada, las macros NO
> funcionan
>> > :: algo extraño pasa aqui
>> > - mi pc, marco la casilla, reinicion excell y vba, las macros siguen
>> > funcionando ::algo muy extraño pasa aqui
>> >
>> > con lo cual decuzco que no es esa la casilla que hay que
> marcas/desmarcar,
>> > no ??
>> >
>> >
>> >
>> >
>> > "KL" wrote in message
>> > news:
>> >> Hola,
>> >>
>> >> > si fuera esto, donde hago para configurar el "Visual Basic
> programming
>> >> > environment" en excel ???
>> >>
>> >> desde el Editor VBA menu Herramientas>Opciones, pestana 'Editor'.


Pero
>> > antes
>> >> de que hagas nada, te recomiendo que vuelvas a leer el articulo que
>> >> acabas
>> >> publicar. Creo que es justo lo contrario a lo que buscas :-(
>> >> Si configuras el "Visual Basic programming environment" tal como


dice
> el
>> >> articulo, te veras obligado a declarar expresamente todas y cada una
>> >> de
>> > las
>> >> variuables de tu codigo.
>> >>
>> >> Saludos,
>> >> KL
>> >>
>> >> O
>> >
>> >
>>
>>
>
>


Respuesta Responder a este mensaje
#12 KL
07/09/2005 - 16:06 | Informe spam
Hola,

Me temo que vamos a necesitar la segunda parte de 'mi pedido', o sea la
informacion sobre que bibliotecas exactamente son las que faltan.

El macro que expones me parece basicamente correcto (aunque optimizable) con
una sola excepcion. Es que en la instruccion ActiveSheet.Protect la usas con
el parametro AllowSorting:=True que no esta disponible en XL97 ni 2000 por
lo cual todas pruebas en las versiones mencionadas te fallaran
independientemente de otros factores. Te recomiendo que hagas la
programacion en la version mas antigua de las que es posible que se usen
para abrir tus aplicaciones.

Las variables que usas en el macro dificilmente podrian confundirse con
alguna palabra reservada de VBA y menos en frances (digo yo). Por tanto creo
que es muy poco probable que tenga que ver con el idioma.

Lo que me parece mas probable es que el problema tenga que ver con la
instalacion de Office en la oficina francesa. Cuando Excel dice que le falta
una libreria tiendo a creerselo :-) En este caso se podria hacer dos cosas:

1) consultar el menu Options>References... del Editor VBA y detectar todas
las librerias que pongan Introuvable (o algo por el estilo) en negrita.
2) intentar abrir el archivo en Francia desde un PC con Office XP o 2003,
pero fuera de la oficina (p.ej en casa)

Comentas?

Saludos,
KL




".·:m·a·r·l·a:·." wrote in message
news:
entonces, aqui un ejemplo de codigo que falla

Sub input03_update()
ActiveSheet.Unprotect
Application.ScreenUpdating = False

'copia las aplicaciones (level 1-3) desde la hoja 1 a la 3
var_column = 10
For var_row = 17 To 2016
If Sheet_input01.Cells(var_row, 2) > 0 And Sheet_input01.Cells(var_row,
2) < 4 Then
Sheet_input03.Cells(6, var_column) = Sheet_input01.Cells(var_row,
2)
Sheet_input03.Cells(7, var_column) = Sheet_input01.Cells(var_row,
3)
Sheet_input03.Cells(8, var_column) = Sheet_input01.Cells(var_row,
4)
Sheet_input03.Cells(9, var_column) = Sheet_input01.Cells(var_row,
9)
Sheet_input03.Cells(10, var_column) = Sheet_input01.Cells(var_row,
10)
var_column = var_column + 1
End If
Next var_row

'añade una columna con todo 0 para delimitar ultima
Sheet_input03.Cells(6, var_column) = 0
Sheet_input03.Cells(7, var_column) = 0
Sheet_input03.Cells(8, var_column) = 0
Sheet_input03.Cells(9, var_column) = 0

ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
_
, AllowSorting:=True
ActiveSheet.EnableSelection = xlNoRestrictions
Application.ScreenUpdating = True
End Sub


te mando tambien adjunto una serie de imagenes:
error1 - error que da al intentar ejecutar dicha pieza de codigo
error2 - despues de dar ok, se puede ver resaltada la primer variable
error3 - dimensiono la variable y pulso f5, el error aparece de nuevo
error4 - despues de ok, se puede ver resaltada la segunda variable

trate de enviar las imagenes adjuntas pero no me deja, las coloque en :
http://www.megaupload.com/?
http://www40.megaupload.com/files/8...errors.zip



como imaginaras, si todas la piezas de codigo fueran asi de sencillas no
tendria problema de
hacer declaracion explicita, pero otras partes son bastantes mas largas y
utilizan variables auxiliares que no tiene por que siempre declararse de
la
misma forma (variable internas en bucles)


temo que tenga algo que ver con el idioma (( puede ser ?? )), pues varios
usuarios en francia lo han intentado correr y siempre falla (( wxp,
office2000, office2003 )), yo trabajo con wxp, office2003 version en
ingles


gracias por todas las molestias


"KL" wrote in message
news:
Hola,

Ya te he dicho la informacion que necesito para intentar ayudarte. Si
quieres, espera a que aparezca alguien que lo pueda hacer en base a la
informacion que has proporcionado hasta este momento.

Saludos,
KL


".·:m·a·r·l·a:·." wrote in message
news:
> si quieres publico el codigo, pero las macros solamente hacen formateo


de
> celdas/columnas... y copia de datos de unas hojas a otras
>
> en el pc frances, cuando da el error colorea el primer uso de la primer
> variable, si entonces en tiempo de ejecucion añado la linea de


declaracion
> de esa variable, el error vuelve a dar pero colorea la segunda variable
>
> alguno de los procedures he declarado por completo y es entonces cuando
> funciona, pero son muchos procedures como para poner a declarar todas


las
> variables en todos ellos
>
> es hay donde mi duda reside, donde se modifican el entorno de VBA,


puesto
> que en ambos pc es el mismo y sin embargo algunos siguen dando el


problema
>
> "KL" wrote in message
> news:
>> Hola,
>>
>> En este sentido la realidad estaba bastante clara desde tu primer
>> mensaje.
>> Ahora solo falta que accedas a publicar el codigo por un lado, y por


otro
>> que el usuario en Francia vaya al Editor VBA, menu
> Herramientas>Referencias
>> y busque el(los) nombre(s) de la(s) biblioteca(s) precedida(s) de
>> MISSING:
>> (o el equivalente frances) :-)
>>
>> Saludos,
>> KL
>>
>>
>> ".·:m·a·r·l·a:·." wrote in message
>> news:eyY%
>> > gracias por responderme tan rapido, ya me he leido el articulo, pero


la
>> > realidad es tal que :
>> >
>> > - mi pc, las macro funcionan, la casilla no esta marcada :: ok
>> > - el pc de mi cliente, la casilla NO esta marcada, las macros NO
> funcionan
>> > :: algo extraño pasa aqui
>> > - mi pc, marco la casilla, reinicion excell y vba, las macros siguen
>> > funcionando ::algo muy extraño pasa aqui
>> >
>> > con lo cual decuzco que no es esa la casilla que hay que
> marcas/desmarcar,
>> > no ??
>> >
>> >
>> >
>> >
>> > "KL" wrote in message
>> > news:
>> >> Hola,
>> >>
>> >> > si fuera esto, donde hago para configurar el "Visual Basic
> programming
>> >> > environment" en excel ???
>> >>
>> >> desde el Editor VBA menu Herramientas>Opciones, pestana 'Editor'.


Pero
>> > antes
>> >> de que hagas nada, te recomiendo que vuelvas a leer el articulo que
>> >> acabas
>> >> publicar. Creo que es justo lo contrario a lo que buscas :-(
>> >> Si configuras el "Visual Basic programming environment" tal como


dice
> el
>> >> articulo, te veras obligado a declarar expresamente todas y cada
>> >> una
>> >> de
>> > las
>> >> variuables de tu codigo.
>> >>
>> >> Saludos,
>> >> KL
>> >>
>> >> O
>> >
>> >
>>
>>
>
>








Respuesta Responder a este mensaje
#13 .·:m·a·r·l·a:·.
10/10/2005 - 15:50 | Informe spam
perdona por no haber contestado antes

al final consegui solucionar el error recreando de nuevo el archivo completo
hoja por hoja

desconozco cual fue la razon, pero temo que podria ser porque en el libro en
cuestion se utilizo (pero borrado despues) un control no standard para hacer
una prueva y no quedo removido del todo, eso fue todo lo mas que fui capaz a
descubrir

asi que de alguna forma referenciaba a una libreria inexistente ??,

y por ello fallaban todas (digo todas) las funciones que no fuesen
operaciones con hojas, llegaban a fallar incluso las operaciones matematicas
que no tienen simbolo unico (como max o cos)


de todas formas, gracias por todo


"KL" wrote in message
news:%
Hola,

Me temo que vamos a necesitar la segunda parte de 'mi pedido', o sea la
informacion sobre que bibliotecas exactamente son las que faltan.

El macro que expones me parece basicamente correcto (aunque optimizable)


con
una sola excepcion. Es que en la instruccion ActiveSheet.Protect la usas


con
el parametro AllowSorting:=True que no esta disponible en XL97 ni 2000 por
lo cual todas pruebas en las versiones mencionadas te fallaran
independientemente de otros factores. Te recomiendo que hagas la
programacion en la version mas antigua de las que es posible que se usen
para abrir tus aplicaciones.

Las variables que usas en el macro dificilmente podrian confundirse con
alguna palabra reservada de VBA y menos en frances (digo yo). Por tanto


creo
que es muy poco probable que tenga que ver con el idioma.

Lo que me parece mas probable es que el problema tenga que ver con la
instalacion de Office en la oficina francesa. Cuando Excel dice que le


falta
una libreria tiendo a creerselo :-) En este caso se podria hacer dos


cosas:

1) consultar el menu Options>References... del Editor VBA y detectar todas
las librerias que pongan Introuvable (o algo por el estilo) en negrita.
2) intentar abrir el archivo en Francia desde un PC con Office XP o 2003,
pero fuera de la oficina (p.ej en casa)

Comentas?

Saludos,
KL




".·:m·a·r·l·a:·." wrote in message
news:
> entonces, aqui un ejemplo de codigo que falla
>
> Sub input03_update()
> ActiveSheet.Unprotect
> Application.ScreenUpdating = False
>
> 'copia las aplicaciones (level 1-3) desde la hoja 1 a la 3
> var_column = 10
> For var_row = 17 To 2016
> If Sheet_input01.Cells(var_row, 2) > 0 And


Sheet_input01.Cells(var_row,
> 2) < 4 Then
> Sheet_input03.Cells(6, var_column) = Sheet_input01.Cells(var_row,
> 2)
> Sheet_input03.Cells(7, var_column) = Sheet_input01.Cells(var_row,
> 3)
> Sheet_input03.Cells(8, var_column) = Sheet_input01.Cells(var_row,
> 4)
> Sheet_input03.Cells(9, var_column) = Sheet_input01.Cells(var_row,
> 9)
> Sheet_input03.Cells(10, var_column) Sheet_input01.Cells(var_row,
> 10)
> var_column = var_column + 1
> End If
> Next var_row
>
> 'añade una columna con todo 0 para delimitar ultima
> Sheet_input03.Cells(6, var_column) = 0
> Sheet_input03.Cells(7, var_column) = 0
> Sheet_input03.Cells(8, var_column) = 0
> Sheet_input03.Cells(9, var_column) = 0
>
> ActiveSheet.Protect DrawingObjects:=True, Contents:=True,


Scenarios:=True
> _
> , AllowSorting:=True
> ActiveSheet.EnableSelection = xlNoRestrictions
> Application.ScreenUpdating = True
> End Sub
>
>
> te mando tambien adjunto una serie de imagenes:
> error1 - error que da al intentar ejecutar dicha pieza de codigo
> error2 - despues de dar ok, se puede ver resaltada la primer variable
> error3 - dimensiono la variable y pulso f5, el error aparece de nuevo
> error4 - despues de ok, se puede ver resaltada la segunda variable
>
> trate de enviar las imagenes adjuntas pero no me deja, las coloque en :
> http://www.megaupload.com/?
>


http://www40.megaupload.com/files/8...errors.zip
>
>
>
> como imaginaras, si todas la piezas de codigo fueran asi de sencillas no
> tendria problema de
> hacer declaracion explicita, pero otras partes son bastantes mas largas


y
> utilizan variables auxiliares que no tiene por que siempre declararse de
> la
> misma forma (variable internas en bucles)
>
>
> temo que tenga algo que ver con el idioma (( puede ser ?? )), pues


varios
> usuarios en francia lo han intentado correr y siempre falla (( wxp,
> office2000, office2003 )), yo trabajo con wxp, office2003 version en
> ingles
>
>
> gracias por todas las molestias
>
>
> "KL" wrote in message
> news:
>> Hola,
>>
>> Ya te he dicho la informacion que necesito para intentar ayudarte. Si
>> quieres, espera a que aparezca alguien que lo pueda hacer en base a la
>> informacion que has proporcionado hasta este momento.
>>
>> Saludos,
>> KL
>>
>>
>> ".·:m·a·r·l·a:·." wrote in message
>> news:
>> > si quieres publico el codigo, pero las macros solamente hacen


formateo
> de
>> > celdas/columnas... y copia de datos de unas hojas a otras
>> >
>> > en el pc frances, cuando da el error colorea el primer uso de la


primer
>> > variable, si entonces en tiempo de ejecucion añado la linea de
> declaracion
>> > de esa variable, el error vuelve a dar pero colorea la segunda


variable
>> >
>> > alguno de los procedures he declarado por completo y es entonces


cuando
>> > funciona, pero son muchos procedures como para poner a declarar todas
> las
>> > variables en todos ellos
>> >
>> > es hay donde mi duda reside, donde se modifican el entorno de VBA,
> puesto
>> > que en ambos pc es el mismo y sin embargo algunos siguen dando el
> problema
>> >
>> > "KL" wrote in message
>> > news:
>> >> Hola,
>> >>
>> >> En este sentido la realidad estaba bastante clara desde tu primer
>> >> mensaje.
>> >> Ahora solo falta que accedas a publicar el codigo por un lado, y por
> otro
>> >> que el usuario en Francia vaya al Editor VBA, menu
>> > Herramientas>Referencias
>> >> y busque el(los) nombre(s) de la(s) biblioteca(s) precedida(s) de
>> >> MISSING:
>> >> (o el equivalente frances) :-)
>> >>
>> >> Saludos,
>> >> KL
>> >>
>> >>
>> >> ".·:m·a·r·l·a:·." wrote in message
>> >> news:eyY%
>> >> > gracias por responderme tan rapido, ya me he leido el articulo,


pero
> la
>> >> > realidad es tal que :
>> >> >
>> >> > - mi pc, las macro funcionan, la casilla no esta marcada :: ok
>> >> > - el pc de mi cliente, la casilla NO esta marcada, las macros NO
>> > funcionan
>> >> > :: algo extraño pasa aqui
>> >> > - mi pc, marco la casilla, reinicion excell y vba, las macros


siguen
>> >> > funcionando ::algo muy extraño pasa aqui
>> >> >
>> >> > con lo cual decuzco que no es esa la casilla que hay que
>> > marcas/desmarcar,
>> >> > no ??
>> >> >
>> >> >
>> >> >
>> >> >
>> >> > "KL" wrote in message
>> >> > news:
>> >> >> Hola,
>> >> >>
>> >> >> > si fuera esto, donde hago para configurar el "Visual Basic
>> > programming
>> >> >> > environment" en excel ???
>> >> >>
>> >> >> desde el Editor VBA menu Herramientas>Opciones, pestana 'Editor'.
> Pero
>> >> > antes
>> >> >> de que hagas nada, te recomiendo que vuelvas a leer el articulo


que
>> >> >> acabas
>> >> >> publicar. Creo que es justo lo contrario a lo que buscas :-(
>> >> >> Si configuras el "Visual Basic programming environment" tal como
> dice
>> > el
>> >> >> articulo, te veras obligado a declarar expresamente todas y cada
>> >> >> una
>> >> >> de
>> >> > las
>> >> >> variuables de tu codigo.
>> >> >>
>> >> >> Saludos,
>> >> >> KL
>> >> >>
>> >> >> O
>> >> >
>> >> >
>> >>
>> >>
>> >
>> >
>>
>>
>
>
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida