FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Insertar una linea en excel con ADO
Hola amigos:
Espero haber situado esta consulta en el hilo adecuado. Estoy intentando insertar un registro en la primera linea de una hoja excel con ADO y no encuentro la forma. Con código siguiente, me funciona perfectamente, pero inserta al final y lo que yo necesito es que inserte al principio para que al importar la hoja poder utilizar los datos insertados como nombres de campo. Cita:
|
#2
|
||||
|
||||
Creo que para poder insertarlos en la primera linea debes utilizar automatización o los componentes de la paleta Servers.
Si lo haces utilizando ADO, el sistema es como si lo hicieras en una tabla y los registros se añaden al final.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
||||
|
||||
Por otro lado, si los archivos son de Excel versión 2007 o superior, cuentas con la alternativa de poder abrirlos sin usar automatización, ya que en el formato .xlsx los libros Excel no son más que ZIPs que contienen archivos XML (sheet1.xml, sheet2.xml...).
Como a cualquier otro XML, se les puede agregar, modificar o quitar nodos. En este caso sería insertar un elemento "<row>" (fila) con sus respectivos elementos hijos "<c>" (celdas), ajustando atributos de posición de los elementos desplazados. Para esto es menester conocer un poco del estándar OpenXML. Así como Neftalí, te recomiendo intentar primero mediante automatización, por ser un proceso más simple. Saludos. |
#4
|
|||
|
|||
En primer lugar gracias por vuestras respuestas.
Pero el caso es que lo que quiero en no depender de Excel. En la actualidad, como todos sabemos, disponemos de LibreOffice y OpenOffice dos excelentes programas que nos liberan de la opresión de Microsoft, además, las personas que utilicen mis programas mi intención es que puedan elegir libremente que programa utilizan. Así que, con esta idea he seguido buscando por la red, con la idea de encontrar algo para LibreOffice. Para los que estén interesados en cualquiera de las dos aplicaciones libres, he encontrado en la web de Bernard Marcell, algunos ejemplos bastante interesantes y aqui github.com/sergio-hcsoft/Delphi-SpreadSheets, una librería para manipulación dual de Excel y OpenOffice. No puedo poneros los enlaces porque si los pongo me sale un mensage de error que me indica que no tengo permisos suficientes. Espero que pueda ayudar a alguien Un saludo a todos Última edición por Neftali [Germán.Estévez] fecha: 23-04-2013 a las 15:17:10. Razón: Añadir los enlaces |
#5
|
||||
|
||||
Gracias por el enlace.
Si acabas utilizándolo estaría bien que nos comentaras qué tal funciona.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
|||
|
|||
Si que los estoy utilizando y funcionan perfectamente.
Con estos componentes no hay ningún problema en insertar lineas, modificarlas o hacer un montón de cosas tanto si es con excel como con LibreOffice. |
#7
|
||||
|
||||
Gracias por la información.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Quebra de linea en excel | Paulao | Varios | 0 | 05-08-2011 15:21:56 |
Insertar Saltos de línea en campo BLOB | dandia28 | Firebird e Interbase | 2 | 01-06-2011 01:52:12 |
insertar salto de linea en listbox | giocatore | Varios | 4 | 26-02-2011 00:01:58 |
Chart insertar línea vertical | vivamotos | C++ Builder | 0 | 06-08-2010 17:53:14 |
Eliminar, actualizar e insertar linea en un memo | gulder | Varios | 12 | 22-04-2007 01:36:38 |
|