Objeto excel

Dolors
19 de Noviembre del 2004
Necesito abrir y tratar un objeto excel desde una pgina asp. Tengo el excel instalado en el servidor web y un fichero plantilla guardado en el disco duro del servidor.
El cdigo que uso es:
Set libroExcel =Server.CreateObject"Excel.Application")
libroExcel.Visible = True
libroExcel.workbooks.Open "d:dadespruebas.xls"
Set libroExcel = nothing

y el error que me da es:

Objeto Server error 'ASP 0196 : 80040154'

No se puede iniciar un componente fuera de proceso

/intranet/gmt/PruebaExcel.asp, line 10

Slo se deben usar componentes InProc del servidor. Si desea usar componentes LocalServer, debe configurar la metabase AspAllowOutOfProcComponents. Consulte el archivo Leame para otras consideraciones importantes.


Alguien puede ayudarme????

Eduardo
19 de Noviembre del 2004
Me pasa lo mismo que a t, pero no s cmo editar la Metabase para cambiar el valor de AspAllowOutOfProcComponents

FernandoC
19 de Noviembre del 2004
Estas abriendo el fichero xls en el PC, no en el servidor. Intenta abrirlo desde el servidor. Por ejemplo
libroExcel.workbooks.Open "http://125.125.125.125/pruebas.xls"
Si elobjeto excel lo hubieses creado en el lado del cliente si te funcionaria
libroExcel.workbooks.Open "d:dadespruebas.xls"
siempre que d:dades.. estubiera en el PC del cliente

Juan Antonio Lozano Legaria
19 de Noviembre del 2004
Te marca error porque no tienes configurado el Automation en el servidor, configuralo y te carga

Felipe
19 de Noviembre del 2004
prueba este codigo, a mi me funciona, lo unico que falta saber es como obtener el numero de columnas que existen con informacion en el excel.

Atte.

Felipe Saavedra.

Dim objXlApp, objXlSheet
' create the Excel object
Set objXlApp = Server.CreateObject("Excel.Application")

' open the spreadsheet file
objXlApp.Workbooks.Open "\la_direccion_de_en_tu_serverAspmi.xls"

' get the worksheet
Set objXlSheet = objXlApp.Worksheets("k") 'k es el nombre de mi hoja en el excel

' read from the worksheet
Response.Write(objXlSheet.Range("b3").Text) ' el rango que quiero ver

' clean up
Set objXlSheet = Nothing
objXlApp.Workbooks.Close
Set objXlApp = Nothing