biblioteca faltante

19/05/2008 - 00:57 por Diana | Informe spam
Tengo una aplicación en la cual la rutina para la salida del archivo, que
gentilmente me la enseñó Héctor Miguel hace tiempo, es la que está abajo.
Funciona muy bien en todas las terminales menos en una. Al querer cerrar la
aplicación sale un mensaje de error: " Biblioteca faltante". El error se
produce con "If LCase" porque si anulo esta sentencia el archivo cierra.
El libro no es compartido y la PC del usuario tiene los mismos complementos
de excel y las mismas referencias en VB que las demás. Alguien sabe cuál
puede ser la biblioteca faltante que produce el error con If LCase?
Gracias

Sub salida()
If LCase(ActiveSheet.Name) = "comentarios" Then MsgBox _
"Seleccione el comando Guardar Comentarios para cerrar esta hoja",
vbCritical: Exit Sub
If MsgBox("¿Desea salir de la aplicación?", vbYesNo) = vbNo Then Exit Sub
With ActiveWorkbook: .Unprotect: .Saved = .ReadOnly
If Not .ReadOnly Then Sheets("inicio").Select: Range("d10").Select
If Workbooks.Count = 1 Then Application.Quit
Application.DisplayFullScreen = False: .Close SaveChanges:=Not .Saved
End With
End Sub
 

Leer las respuestas

#1 Héctor Miguel
19/05/2008 - 01:18 | Informe spam
hola, Diana !

... la rutina para la salida del archivo... Funciona muy bien en todas las terminales menos en una.
Al querer cerrar la aplicacion sale un mensaje de error: " Biblioteca faltante".
El error se produce con "If LCase" porque si anulo esta sentencia el archivo cierra.
El libro no es compartido y la PC del usuario tiene los mismos complementos de excel
y las mismas referencias en VB que las demas.
Alguien sabe cual puede ser la biblioteca faltante que produce el error con If LCase?



(hasta donde se)... cuando un codigo indica como causa de error a funciones basicas de vba (como date, right, mid, etc.)...
(generalmente) se debe a referencias perdidas, nombres "ambiguos" (o duplicados) que vba no puede resolver

-> (en ese pc o proyecto de macros) busca en las referencias de vba (herramientas / referencias)...
alguna/s que diga/n que su referencia esta perdida => missing: -o- falta: < si se trata de alguna de las normales, pudiera ser necesario re-registrar excel (en el registro de windows)
-> desde el boton inicio -> ejecutar -> excel /regserver
-> PERO... para la version 2007, es necesario ejecutar una (re)instalacion desde el panel de control de windows:
(agregar / quitar progrmas) con la opcion de "reparar"

-> otra (posible) causa del error seria si (p.e.) al simplemente iniciar excel NO aparece el (normal) libro1 en blanco
(en ese caso) pudiera tratarse de algun virus que se "auto-carga" desde algun directorio de inicio (xlstart???)

comentas (si hubiera) algun detalle adicional ?
saludos,
hector.

__ el codigo expuesto __
Sub salida()
If LCase(ActiveSheet.Name) = "comentarios" Then MsgBox _
"Seleccione el comando Guardar Comentarios para cerrar esta hoja", vbCritical: Exit Sub
If MsgBox("¿Desea salir de la aplicación?", vbYesNo) = vbNo Then Exit Sub
With ActiveWorkbook: .Unprotect: .Saved = .ReadOnly
If Not .ReadOnly Then Sheets("inicio").Select: Range("d10").Select
If Workbooks.Count = 1 Then Application.Quit
Application.DisplayFullScreen = False: .Close SaveChanges:=Not .Saved
End With
End Sub

Preguntas similares