2012-07-18 12 views
6

Mi cliente está obteniendo un Error de compilación; No puedo encontrar el proyecto o la biblioteca en su versión de Excel 2010, sin embargo, no estoy obteniendo esto en mi versión de 2010. ¿Cómo puedo ajustar este código para que no aparezca? Cuando aparece el error en el código siguiente a la "célula" texto en "Para cada celda en la selección" se pone de relieve:Me sale 'Error de compilación: no se puede encontrar el proyecto o la biblioteca' en algunas versiones de Excel 2010. Difícil de probar esto

Private Sub Worksheet_Change(ByVal Target As Range) 
If Target.Address = "$B$9" Then 
Columns("D:CB").Select 
Selection.EntireColumn.Hidden = False 
Application.ScreenUpdating = False 

Sheet17.Range("E48:CB48").Select 

For Each cell In Selection 
    If cell = 0 Then 
     Range(cell.Address).EntireColumn.Hidden = True 
    End If 
Next 

Application.ScreenUpdating = True 
Sheet17.Range("b9").Select 
End If 

End Sub` 

Mi cliente también está reportando un error en el código siguiente con la palabra "Respuesta" está resaltada . Esto, a su vez, no es un problema para mí, en mi versión de Excel 2010. Cualquier ayuda es muy apreciada.

If Sheet1.Range("E18") = 3 Then 
Response = MsgBox("Reminder Emails have been set to be sent automatically at " &    Sheet1.Range("f18").Value & ", " & Sheet1.Range("Q4").Value & " day(s) before" & vbCrLf & "the scheduled appointment. Do you want to send reminder e-mails now anyway?", vbYesNo) 
    If Response = vbNo Then 
    Exit Sub 
    End If 
    End If 
+0

Está utilizando 'Response' para contener una variable larga, por lo que no debería estar produciendo un error (a menos que quizás' Response' sea parte del modelo de objeto de una referencia de biblioteca - guess). Yo usaría 'lngResponse' para el nombre y lo dimensionaría siempre. – brettdj

+2

Esto puede ser idéntico a: http://stackoverflow.com/questions/507191/cant-find-project-or-library-for-standard-vba-functions – Smandoli

+0

Bien, voy a intentarlo. Como en mi máquina, todas estas opciones funcionan bien, tengo que esperar los comentarios de los clientes, lo cual es un poco frustrante. Muchas gracias de nuevo – ExcelForFreelancers

Respuesta

9

En la ventana de VBA, vaya a Tools --> References y garantizar las mismas bibliotecas están activadas o para todos los equipos. También asegúrese de que todas las bibliotecas activas estén en el mismo orden de arriba a abajo.

Muchas bibliotecas "vienen de serie" pero es posible que sea necesario activarlas. O bien, es posible que sea necesario cambiar la referencia de la biblioteca por debido a una interferencia funcional. Una biblioteca puede faltar por completo, pero dudo que este sea el caso, ya que es una suite bastante estándar y no está consciente de haber jugado con ella.

Este es un problema típico y generalmente no se considera una carga demasiado grande para su clientela de distribución. Si es así, puede volver a trabajar su código para usar menos referencias; o puede llamar al load the needed libraries programmatically (pero nunca lo he intentado).

Le sugiero que incluya Option Explicit en la parte superior de todos los módulos. Este problema se parece un poco a una falla al declarar sus variables; y creo que ese requisito puede variar según la configuración. Option Explicit obligará a declarar todas las variables, lo cual es beneficioso en general y podría hacer que todas las instalaciones de los clientes actúen de la misma manera.

+0

Ok, era consciente de esto, pero realmente esperaba que hubiera algún problema con mi código, por lo que no tendría que pedirle a mi cliente que lo hiciera. En función de su respuesta, continuaré y le pediré que revise sus bibliotecas de VBA como ha sugerido. (Espero que esto no ocurra, ya que esta aplicación se distribuirá ampliamente) Gracias por su rápida respoinse – ExcelForFreelancers

+0

@raphuket Las bibliotecas deben estar en ** automáticamente ** - es decir, el problema es que faltan en la máquina en lugar de sin alternar – brettdj

+0

@brettdj Hmmmm, Ok. Obviamente soy nuevo en VBA, y acabo de enviarle a mi cliente un correo electrónico, con instrucciones, para verificar esto. Si sus bibliotecas son "perdidas", entonces supongo que solo sería necesario reinstalar Excel. ¿O es esta 'biblioteca faltante' algo que puede instalar, o puedo enviarle? Perdón por todas las preguntas, pero si este es un problema generalizado con otros clientes, tendré que encontrar una solución alternativa. – ExcelForFreelancers

Cuestiones relacionadas