Privacidad: Recuerde que la información escrita en los foros de programación es 100% pública y que su ip será registrada asociada a su mensaje. Si encuentra un mensaje fuera de lugar, por favor, notifiquelo para su revisión y eliminación.
Exportación a Excel desde ASP
Enviado por Carolina el día 26 de noviembre de 2003
Estoy exportando información que se encuentra en una tabla HTML a una planilla Excel. Necesito que la aplicación excel no formatee las celdas, sino que deje los valores tal cual los pongo. Pero si escribo 0005 por ejemplo, la planilla excel lo formatea a 5.
Estoy trabajando con el objeto Excel.Application y la asignación la hago de la siguiente forma: oWorkSheet.cells(x,y).value = xxx
Alguien sabe cómo podría resolver este problema?
Gracias.
si tienes creada la hoja de excel lo que puedes hacer para que cuando escribas 0005 y siga apareciendo 0005 es de la siguiente foram:
boton derecho encima de la celda o selecionas todas.
y en formato de celdas... en la pestaña de Número selecioonas
la categoria de texto.
De esta forma todo lo que le escribas lo tomara como testo con el incombeniente de que no puedes realizar operaciones.
Si el caso es que la creas desde asp no se la manera de yegar a esa operacion manuel en codigo
Realmente no se como hacer lo que necesitas, hice algunas pruebas y siempre lo formatea. Me gustaría saber si tu has hecho desde ASP que celdas específicas te salgan combinadas y si puedes definir el ancho de la celda, es para organizar el reporte de tal forma que cuando lo vean en excel este listo para imprimir.
Gracias y espero que hayas encontrado solución a tu problema
Para dar formato a un rango puedes utilizar el mismo código que utilizarias en VB para excel.
Si utilizas la grabadora de excel te va grabando el código necesario (en VB) para realizar por programa lo que estes haciendo a mano. Despues copias este codigo ( depurandolo, normalmente sobra mucho) a vbscript y seguramente no te de grandes problemas en su funcionamiento.
Con esta instrucción pones la celda o la selección de celdas que hayas hecho de tipo texto. De esta forma se sacará la información tal y como la pones. Es decir, si escribes 00005, te dejará ésto y no te lo convertirá a 5.
Set Excel = CreateObject ("Excel.Application")
Excel.Columns("A:A").Select
Excel.Selection.NumberFormat = "@"
Enviado por Luis Rey el día 4 de septiembre de 2008
Creando una tabla con html y con el Response.ContentType = "application/vnd.ms-excel"
Para que el valor numerico no lo cambie automaticamente el excel y se almacene en la celda como texto debes poner un espacio antes del valor numerico, por ejemplo si en la variable valor = 00005 en tu codigo escribes: response.write "<td> " & valor & "</td>"
E igualmente en cada variable que tenga un valor que comience con un 0 a la izquierda.