La Web del Programador: Comunidad de Programadores
 
    Pregunta:  27018 - CONECTAR A UNA HOJA EXCEL CON ASP Y CONTRASEñA
Autor:  LUIS F
Estoy intentando conectar a una hoja Excel2000 de la siguiente manera

Set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"DRIVER={Microsoft Excel Driver (*.xls)};uid=LAF;pwd=larri;DBQ=\" & Path
Set rsVac = Server.CreateObject("ADODB.Recordset")

El problema es que cuando protejo el libro de excel con la opción "guardar como" "herramientas" "opciones generales" "contraseña de protección" larri
me da el error

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Microsoft][Controlador ODBC Excel] No se puede abrir la base de datos '(desconocido)'. Es posible que su aplicación no reconozca este tipo de base de datos o que el archivo esté dañado

Si el libro Excel no está protegido todo funciona bien. He intentado modificar todos los valores y combinaciones posibles de uid y pwd y no hay manera.

Entiendo que la contraseña que escribo en excel "larri" es la que debería poner en pwd pero ya no lo tengo claro, me estoy volviendo loco. LAF es mi nombre de usuario, el que aparece en EXCEL2000 cuando intento abrir un archivo protegido.

Un saludo y gracias por adelantado

  Respuesta:  David Delgado Ruiz
Si quitas 'pwd=larri' deberia pedirte la contraseña al realizar la conexión, en teoria no debe darte el error, no sé como puedes automatizar la entrada sin tener que teclear la clave cada vez que conectes, de todas maneras si quieres proteger la Hoja de Cálculo, lo lógico es que no se pueda abrir sin saber la contraseña, y si lo haces desde una conexión cualquiera que llegue hasta esa página podría abrir la Hoja de cálculo.

Espero que te funcione, yo no lo he podido probar por falta de tiempo.