Caso curioso exportando a excel desde una rejilla.
Afortunadamente lo acabo de resolver, pero os cuento lo que me ha estado pasando.
Con este código exporto facturas de una rejilla a excel, sin problemas.
Ocurre que la primera columna es el número de las facturas y tiene el siguiente formato: 04-1800 El 04 indica el año y el resto del número es el número de la factura. Pues sucede que me funcionaba correctamente hasta que observe que ciertas facturas en vez de el número aparecía una fecha con un formato personalizado. Después de muchas vueltas me dí cuenta que esto sucedía a partir de la factura 2000 es decir 04-2000 y no con la 04-1999 Llegué a la conclusión de que las anteriores funcionaban por los efectos de ser menores de 2000 y a partir de este número excel interpretaba el formato como fecha. Probé añadiéndole a la factura según se la pasaba a excel una 'F' por delante pues nada seguía igual. Al final se me ocurrio entrar a Excel crear una macro de formato, entrar luego en dicha macro y ver que utilizaba para asegurarse el formato de texto y gracias a esto lo resolví, pongo la solución por si a alguien le ocurriera lo mismo.
Un Saludo. |
Si no recuerdo mal, si pones el carácter comilla simple ' al comienzo del campo, lo toma como texto, independientemente del formato de la celda.
Por otro lado, y aunque no venga muy a cuento.... has podido exportar a excel 2007 ? Estoy pillado y no encuentro solución. Saludos |
Ya probé el apóstrofo y tampoco funcionó, relativo al tema de Excel 2007, no he tenido aún la oportunidad de hacer la prueba.
Un Saludo. |
Gracias por la respuesta. Me sorprende que el apóstrofo no funcione.
A ver si alguien abre este melón del office 2007 que me tiene mareado. Saludos |
Holitas, a mi me ha pasado algo parecido hace dos semanas, en mi caso tenía que exportar un código XXX.XXXXXX donde las X son números, al exportarlo me lo tomaba como un número decimal cambiando el punto por la coma . También lo he solucionado con lo que comenta Marcos dandole formato ya que necesitaba que se exporte como texto. Lo unico diferente que tiene lo mío es "EntireColumn", para darle el formato a toda la columna.
Nota.- Yo tampoco he probado con Excel 2007 Saluditos |
Acabo de probar la exportación a Excel 2007 y no he tenido ningún problema.
// Saludos |
Cita:
Por favor, confirmanoslo. Gracias y un saludo |
Usé Delphi 7, y éste es el ejemplo:
Claro que aquí no tengo un dataset, pero esto ya sería los de menos ¿no? // Saludos |
FUNCIONA !!
Gracias por la aportación, he probado y me funciona. Hay unos cuantos hilos preguntando lo mismo, y parece que hay una pequeña diferencia. El código que yo tengo y no funciona tiene unas pequeñas diferencias: - Las variables son VARIANT en lugar de OLEVARIANT - Cuando creo el objeto pongo Excel:= CreateObject('Excel.application') - Lo demás es exactamente igual,... - pero el resultado no es el mismo. El código de roman funciona estupendamente tras probarlo. Gracias y un saludo :p |
Pues acabo de probar nuevamente usando Variant en lugar de OleVariant y sigue funcionando :p. Lo que no he podido probar es lo de CreateObject pues no sé a qué función te refieres. ¿En qué unidad está?
// Saludos |
Creo que me equivoqué por hacer ezcrito de memoria.
Realmente quería decir CreateOleObject('Excel.Application'); y no CreateObject('Excel.Application'); Mañana la noche te responderé y copiaré el código exacto. Hoy no puedo , JUEGA EL ATHLETIC la semifinal de copa contra el Sevilla. Saludos |
Pero entonces la única diferencia está sólo en el prefijo ComObj, pero eso sólo indica la unidad, no debería afectar, a menos que estés usando un CreateOleObject de otra unidad, aunque desconozco cuál podría ser.
Cita:
// Saludos |
Bueno, como el athletic ha ganado, os pongo el código que no me funcionaba en un principio. Funcionaba para excel 2000 y 2003 pero no para excel 2007.
Pues eso, la diferencia está en el tipo de variable, que en este caso era variant y en el caso de roman olevariant. Si hay algún gurú que pueda encontrar una respuesta, pues que nos la cuente si no es molestia. Saludos http://www.elcorreodigital.com/vizcaya/ Aupa Athletic !! |
La franja horaria es GMT +2. Ahora son las 01:21:34. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi