Foros del Web » Programando para Internet » ASP Clásico »

Rellenar un archivo de excel ya existente en el servidor

Estas en el tema de Rellenar un archivo de excel ya existente en el servidor en el foro de ASP Clásico en Foros del Web. OK les explico, tengo un archivo de excel en mi servidor y ya ese archivo tiene un formato(posee color en las celdas y una letra ...
  #1 (permalink)  
Antiguo 07/06/2005, 12:49
 
Fecha de Ingreso: octubre-2003
Ubicación: Caracas, Venezuela
Mensajes: 92
Antigüedad: 20 años, 7 meses
Puntos: 0
Rellenar un archivo de excel ya existente en el servidor

OK les explico, tengo un archivo de excel en mi servidor y ya ese archivo tiene un formato(posee color en las celdas y una letra predefinida), lo que quiero hacer y no se como, es meterle data de mi BD a ese archivo sin perder el formato que esta en el. Adiconalmente esta hoja de excel esta programada es decir tiene ciertas acciones dentro.

Por favor ayudenme.......
  #2 (permalink)  
Antiguo 07/06/2005, 12:59
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Muchas preguntas de Excel utilmamente, la verdad es que no tengo mucha experiencia trabajando con Excel + ASP, pero hice una busqueda rapida, les dejo este enlace:

http://www.aspemporium.com/support.aspx?PRB042

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #3 (permalink)  
Antiguo 07/06/2005, 13:22
 
Fecha de Ingreso: octubre-2003
Ubicación: Caracas, Venezuela
Mensajes: 92
Antigüedad: 20 años, 7 meses
Puntos: 0
bueno voy a probras y te aviso. gracias
  #4 (permalink)  
Antiguo 09/06/2005, 10:31
Avatar de Pachangero  
Fecha de Ingreso: marzo-2005
Mensajes: 102
Antigüedad: 19 años, 2 meses
Puntos: 0
Saludos

eagrella pudistes encontrar la manera de como modificar un archivo de Excel?
  #5 (permalink)  
Antiguo 23/06/2005, 11:53
 
Fecha de Ingreso: octubre-2003
Ubicación: Caracas, Venezuela
Mensajes: 92
Antigüedad: 20 años, 7 meses
Puntos: 0
esto no me sirvio. Mi Problema radica en que tengo un archivo de excel en el servidor, para ser mas explicito mi archivo ya tiene una especie de formato un color en las celdas y unos titulos y lo que tengo que hacer es abrir ese archivo y a partir de cierta linea escribir mis datos desde BD.
POR FAVOR AYUDENME.
  #6 (permalink)  
Antiguo 23/06/2005, 14:40
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 4 meses
Puntos: 6
Yo ahora no tengo tiempo, en cuanto lo tenga te pondré una serie de links que te pueden ayudar.

También estoy atareado intentando trabajar con Excel, y te puedo decir que te encontrarás pegas por muchas partes, no he encontrado la perfección del sistema aún.

De momento, un consejo: si ves que no puedes modificar una hoja de excel ya existente, lo que puedes hacer es otra cosa: leer dicha hoja de excel (podrás ver en muchos links cómo hacerlo), para a continuación crear otra hoja de excel idéntica más los nuevos campos que quieras añadir (cómo crear la nueva hoja es lo que entraña un poco más de dificultad y es de lo que estoy pendiente ahora, puesto que no sé cómo crearla con formato y que se pueda después leer desde ASP).

Saludos
  #7 (permalink)  
Antiguo 23/06/2005, 14:42
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 4 meses
Puntos: 6
Por cierto, u_goldman! ¡Muy útil lo tuyo! Ya lo miraré más a fondo, que ahora no tengo tiempo.

Os aviso desde ya: la forma del Addheader, es muy cómoda, pero por lo que me ha pasado a mí (igual a otros no), ineficaz, pues obtienes páginas de excel ilegibles desde asp después. Tal vez la otra forma que viene en el link que ha puesto u_goldman sea "la clave", jeje.

En cualquier caso, por lo que he podido ver, existen muchas formas distintas para al final hacer lo mismo, habrá que buscar qué forma con "qué apaños" puede al final ser la que mejor sirva.

Saludos
  #8 (permalink)  
Antiguo 23/06/2005, 20:07
Avatar de u_goldman
Moderador
 
Fecha de Ingreso: enero-2002
Mensajes: 8.031
Antigüedad: 22 años, 5 meses
Puntos: 98
Cita:
Iniciado por un_tio
Os aviso desde ya: la forma del Addheader, es muy cómoda, pero por lo que me ha pasado a mí (igual a otros no), ineficaz, pues obtienes páginas de excel ilegibles desde asp después. Tal vez la otra forma que viene en el link que ha puesto u_goldman sea "la clave", jeje.
mmmmhhhh...la verdad es que a mi siempre me ha funcionado bastante bien, pero tienes que asegurarte de poner la rutina preferentemente en un archivo en blanco y hacer el response.end inmediatamente despues de terminar la carga, de lo contrario, te mostrara todo el contenido de tu web, haciendo ilegible el archivo.

Salu2,
__________________
"El hombre que ha empezado a vivir seriamente por dentro, empieza a vivir más sencillamente por fuera."
-- Ernest Hemingway
  #9 (permalink)  
Antiguo 27/06/2005, 04:33
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 4 meses
Puntos: 6
Cita:
Iniciado por u_goldman
mmmmhhhh...la verdad es que a mi siempre me ha funcionado bastante bien, pero tienes que asegurarte de poner la rutina preferentemente en un archivo en blanco y hacer el response.end inmediatamente despues de terminar la carga, de lo contrario, te mostrara todo el contenido de tu web, haciendo ilegible el archivo.

Salu2,
Ni así (con lo del Response.End) me funciona.

¿Seguro que tú puedes leer el archivo de excel desde ASP, si éste archivo lo has creado tú desde ASP con directivas HTML? He descubierto que si no las uso, ya puedo leerlo, pero pierdo la posibilidad de darle formato (negrita, etc.), y no sé cómo se lo podría dar si no es así.

Éste es el error que me sale al intentar abrir el archivo xls (repito, sólo cuando la hoja de excel la he creado con código html desde ASP, si la he creado desde el propio Excel o desde ASP pero sin usar directivas html, me va perfectamente):

Código:
Tipo de error:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][Controlador ODBC Excel]Error general No se puede abrir la clave 'Temporary (volatile) Jet DSN for process 0x9f0 Thread 0xbb8 DBC 0x2d4e024 Excel' del Registro.
/prueba1/prueba2/TMPkz2ziqkry.asp, line 13
Y en dicha línea mencionada en el error, se encuentra una conexión:

ConexionBD.Open "DRIVER={Microsoft Excel Driver (*.xls)};DBQ=" & Path
  #10 (permalink)  
Antiguo 27/06/2005, 04:50
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 4 meses
Puntos: 6
Por si sirve, aquí pongo lo que dice la ayuda del Excel referente a los formatos que puede leer y guardar:
Cita:
Formatos de archivos de texto
Texto con formato (delimitado por espacios)

El formato Texto con formato (*.prn) guarda únicamente el texto y los valores como aparezcan en las celdas de la hoja de cálculo activa.

Todas las filas se guardarán. Si una fila de celdas contiene más de 240 caracteres, los caracteres posteriores al 240, se enviarán a una nueva línea al final del archivo convertido. Por ejemplo, si las filas de la 1 a la 10 contienen más de 240 caracteres, el texto restante en la fila 1 se colocará en la fila 11, el texto restante en la fila 2 se colocará en la fila 12 y así sucesivamente.

Las columnas de datos se separan mediante comas y cada fila termina en un retorno de carro. Si las celdas presentan fórmulas en vez de valores, éstas se convertirán como texto. Todo el formato, gráficos, objetos y cualquier otro contenido de la hoja de cálculo se perderá. El símbolo del euro se convertirá en signo de interrogación.

Antes de guardar una hoja de cálculo en este formato, asegúrese de que todos los datos que desee convertir están visibles y de que hay entre las columnas el espacio adecuado. En caso contrario, los datos pueden perderse o no separarse correctamente en el texto convertido. Puede que sea necesario adaptar los anchos de columna en la hoja.

Texto (delimitado por tabulaciones)

El formato de archivo Texto (*.txt) guarda únicamente el texto y los valores como aparezcan en las celdas de la hoja de cálculo activa. Todas las filas y todos los caracteres en cada celda se guardarán. Las columnas de datos se separan mediante tabulaciones y cada fila termina en un retorno de carro. Si una celda contiene una coma, el contenido de la celda se escribirá entre comillas dobles. Todo el formato, gráficos, objetos y cualquier otro contenido de la hoja de cálculo se perderá. El símbolo del euro se convertirá en signo de interrogación.

Si las celdas presentan fórmulas en vez de valores, éstas se guardarán como texto. Para conservar las fórmulas si se vuelve a abrir el archivo en Microsoft Excel, seleccione la opción Delimitados en el Asistente para importar texto y seleccione las tabulaciones como delimitadores.

Nota Si el libro contiene caracteres especiales como el símbolo de copyright (©) y va a utilizarse en un equipo que tenga otro sistema operativo, guárdelo en el formato de archivo de texto correspondiente a ese sistema. Por ejemplo, si utiliza Windows y desea utilizar el archivo de texto en un equipo Macintosh, guarde el archivo en formato Texto (Macintosh). Si utiliza un equipo Macintosh y desea utilizar el archivo de texto en un sistema que ejecute Windows o Windows NT, guárdelo en formato Texto (Windows).

Texto (Unicode)

El formato Texto (*.txt) guarda el texto y los valores tal como aparecen en las celdas de la hoja de cálculo activa.

Sin embargo, si abre un archivo en formato de texto (Unicode) utilizando un programa que no lee Unicode, como el Bloc de notas de Microsoft Windows 95 o un programa basado en MS-DOS de Microsoft, los datos se perderán.

Nota El Bloc de notas de Microsoft Windows NT no lee archivos en formato de texto (Unicode).

CSV (delimitado por comas)

El formato de archivo CSV (*.csv) guarda únicamente el texto y los valores como aparezcan en las celdas de la hoja de cálculo activa. Todas las filas y todos los caracteres en cada celda se guardarán. Las columnas de datos se separan mediante comas y cada fila termina en un retorno de carro. Si una celda contiene una coma, el contenido de la celda se escribirá entre comillas dobles.

Si las celdas presentan fórmulas en vez de valores, éstas se convertirán como texto. Todo el formato, gráficos, objetos y cualquier otro contenido de la hoja de cálculo se perderá. El símbolo del euro se convertirá en signo de interrogación.

Nota Si el libro contiene caracteres especiales como el símbolo de copyright (©) y va a utilizarse en un equipo que tenga otro sistema operativo, guárdelo en el formato de archivo de texto correspondiente a ese sistema. Por ejemplo, si utiliza Windows y desea utilizar el archivo de texto en un equipo Macintosh, guarde el archivo en formato CSV (Macintosh). Si utiliza un equipo Macintosh y desea utilizar el archivo de texto en un sistema que ejecute Windows o Windows NT, guárdelo en formato CSV (Windows).

Formato de intercambio de datos (DIF)

El formato DIF (*.dif) guarda únicamente el texto, los valores y las fórmulas de la hoja de cálculo activa.

Todas las filas y todos los caracteres en cada celda se guardarán.
Si las opciones de la hoja de cálculo se establecen para presentar los resultados de la fórmula en las celdas, solamente se guardarán los resultados de la fórmula en el archivo convertido. Para guardar las fórmulas, preséntelas en la hoja de cálculo antes de guardar el archivo. Para presentar las fórmulas, active la casilla de verificación Fórmulas en la ficha Ver del cuadro de diálogo Opciones del menú Herramientas.
El ancho de columna y la mayor parte de los formatos se guardarán, pero todos los demás formatos se perderán.
Los valores especificados en el cuadro de diálogo Configurar página (menú Archivo) y los saltos de página manuales se perderán.
Los comentarios de celda, gráficos, gráficos incrustados, objetos, controles de formularios, hipervínculos, valores de validación de datos, formato condicional y otras características de la hoja de cálculos se perderán.
Los datos que aparezcan en la vista actual de un informe de tabla dinámica se guardarán, todos los demás se perderán.
El código de Visual Basic se perderá.
El símbolo del euro se convertirá en signo de interrogación.
SYLK (Vínculo simbólico)

El formato SYLK (*.slk) guarda únicamente los valores y fórmulas de la hoja de cálculo activa y un formato de celda limitado.

Se guardarán todas las filas y 255 caracteres por celda.
Si una función de Microsoft Excel no se admite en formato SYLK , Microsoft Excel la calculará antes de guardar el archivo y reemplazará la fórmula con el valor resultante.
La mayoría del formato de texto se guardará; el texto convertido tomará el formato del primer carácter en la celda. El texto girado, las celdas combinadas y la configuración de la alineación vertical y horizontal se perderá. El color de fuente puede convertirse a otro color si se vuelve a abrir en Microsoft Excel la hoja SYLK convertida. Los bordes se convertirán a bordes de una sola línea. El sombreado de celda se convertirá a un sombreado punteado de color gris.
Los valores especificados en el cuadro de diálogo Configurar página (menú Archivo) y los saltos de página manuales se perderán.
Los comentarios de celda se guardarán; podrán verse si se abre de nuevo en Microsoft Excel el archivo SYLK.
Los gráficos, gráficos incrustados, objetos, controles de formularios, hipervínculos, valores de validación de datos, formato condicional y otras características de la hoja de cálculos se perderán.
El código de Visual Basic se perderá.
Los datos que aparezcan en la vista actual de un informe de tabla dinámica se guardarán, todos los demás se perderán.
Si convierte el archivo para utilizarlo en Microsoft Excel para Macintosh, versión 1.5 o anterior, desactive la casilla de verificación Sistemas de fechas 1904 en la ficha Calcular del cuadro de diálogo Opciones (menú Herramientas) y asegúrese de que todos valores están visibles antes de guardar el archivo.
Nota Puede utilizarse el formato SYLK (vínculo simbólico) para guardar archivos de libro para utilizarlos en Microsoft Multiplan. Excel 2002 no incluye convertidores de formato de archivo para convertir directamente los archivos de libro al formato de Multiplan.
  #11 (permalink)  
Antiguo 30/06/2005, 10:38
 
Fecha de Ingreso: febrero-2005
Mensajes: 1.015
Antigüedad: 19 años, 4 meses
Puntos: 6
Interesante el link que puso u_goldman.

¿Alguien sabe qué instrucciones se pueden usar para crear hojas excel con el método oWC? Creo que son las que vienen aquí: http://msdn.microsoft.com/library/de...jParameter.asp

Última edición por un_tio; 03/07/2005 a las 08:33
  #12 (permalink)  
Antiguo 07/07/2005, 08:56
 
Fecha de Ingreso: octubre-2003
Ubicación: Caracas, Venezuela
Mensajes: 92
Antigüedad: 20 años, 7 meses
Puntos: 0
Aqui les va la solucion de como escribir en un archivo de excel ya existente y con cualquier tipo de datos TANTO ESTATICOS COMO DINAMICOS
[QOUTE]
Set appExcel = Server.CreateObject("Excel.Application")'Component e que se instala cuando posee office instalado sino NO SIRVE

appExcel.Workbooks.Open(nombre_de_tu_archivo)
appExcel.Range("B" & 2).Value = 1 'escribe 1 en la linea b2 de excel
For i = 4 To 10 ' empiezo a escribir desde la linea 4 hasta la 10
appExcel.Range("A" & i).Value = "PEPE"
appExcel.Range("B" & i).Value = 15
appExcel.Range("C" & i).Value = "Profecional"
appExcel.Range("D" & i).Value = 40
Next
appExcel.ActiveWorkbook.SaveAs (ruta_mas_nombre_nuevo) 'salvo elarchivo como quieras y donde quieras
appExcel.Workbooks.Close ' cierro el objeto y listo
[/QOUTE]

Espero que les sirva de ayuda de todas formas lo voy a publicar en el FAQ de ASP
  #13 (permalink)  
Antiguo 07/07/2005, 09:05
 
Fecha de Ingreso: octubre-2003
Ubicación: Caracas, Venezuela
Mensajes: 92
Antigüedad: 20 años, 7 meses
Puntos: 0
Faqs

Como Escribir Archivo de Excel Existente con ASP

Espero que les sirva
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 18:25.