| Ver tema anterior :: Ver tema siguiente |
| Autor |
Mensaje |
Raul13 Cdt

Registrado: 10 Jun 2009Mensajes: 3Ubicación: Chile
|
Publicado: Mie 10 Jun, 2009 4:58 am Asunto: Exportacion de datos a Excel 2007 |
|
|
Hola amigos
Queria pedir alguna ayuda para generar archivos excel 2007 con BC 6.0.
Encontre un codigo basico para el caso de Excel 97 y funciona bien pero ahora para Excel 2007 no me funciona . ¿que puedo hacer ? _________________ Saludos
Atte
RGH
Ultima edición por Raul13 el Dom 14 Jun, 2009 3:57 pm, editado 1 vez |
|
| Volver arriba |
|
 |
escafandra Master

Registrado: 29 Nov 2007Mensajes: 625Ubicación: Madrid - España
|
Publicado: Mie 10 Jun, 2009 10:32 pm Asunto: |
|
|
¿Has estudiado este hilo?
Saludos. |
|
| Volver arriba |
|
 |
Raul13 Cdt

Registrado: 10 Jun 2009Mensajes: 3Ubicación: Chile
|
Publicado: Sab 13 Jun, 2009 11:35 pm Asunto: |
|
|
Hola
Sip algo similar tengo en codigo y para el caso de Excel 2007 no me funciona la siguiente propiedad
Excel.OleProcedure("SaveAs", "nombredearchivo.xls");
Esto para un PC q tenga Excel 97 funciona perfecto pero para el caso de un PC que tenga instalado Excel 2007 no funciona (probe con varias extenciones y nada de nada).
Saludos
Atte
Raul _________________ Saludos
Atte
RGH |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Dom 14 Jun, 2009 1:15 am Asunto: |
|
|
¿Realmente has probado el ejemplo al que hace referencia escafandra? A mi me funciona. Aquí va otro ejemplo sencillo:
| Código: | // Añadimos: #include <ComObj.hpp>
Variant excel = CreateOleObject("Excel.Application");
excel.OlePropertySet("Visible", false);
Variant libro = excel.OlePropertyGet("Workbooks").OleFunction("Add");
Variant hoja = libro.OlePropertyGet("ActiveSheet");
hoja.OlePropertySet("Cells", 1, 1, "Esto es una prueba");
excel.OlePropertySet("DisplayAlerts", false);
libro.OleProcedure("SaveAs", "c:\\prueba");
// En Excel2007 se guardara por defecto en formato .xlsx
// Si queremos forzar a que se guarde en formato .xls (97-2003):
// libro.OleProcedure("SaveAs", "c:\\prueba", 56 /*xlExcel8*/);
// Otros formatos: http://msdn.microsoft.com/en-us/library/bb241279.aspx
excel.OleProcedure("Quit");
ShowMessage("Documento generado en c:\\"); |
|
|
| Volver arriba |
|
 |
Raul13 Cdt

Registrado: 10 Jun 2009Mensajes: 3Ubicación: Chile
|
Publicado: Dom 14 Jun, 2009 6:09 am Asunto: |
|
|
mmmmmm
revise revise y revise pues tenia casi lo mismo que indicas y llegue a detectar lo siguiente:
Pues cuando guardo en una carpeta llamada "registros" daba el enlace de la siguiente forma
Excel.OleProcedure("SaveAs", ""c:/registros/Registro.xls "");
y esto funcionaba bien en Excel 97
Pero ojo ahora en Excel 2007, debe ser :
Excel.OleProcedure("SaveAs", ""c:\\registros\\Registro "");
Bueno les cuento que lo que he hecho es extraer informacion desde un PLC via un Servidor DDE y luego esa informacion la despliego en TsrtingGrid y luego de cierta cantidad de registros exporto esos datos a una planilla Excel .
Saludos
Super gracias por la ayuda amigos .
Gracias estamos en contacto... _________________ Saludos
Atte
RGH |
|
| Volver arriba |
|
 |
_Leo Site Admin

Registrado: 11 Ago 2002Mensajes: 1875Ubicación: Lanzarote - Islas Canarias (España)
|
Publicado: Dom 14 Jun, 2009 6:34 am Asunto: |
|
|
| El ejemplo que he puesto arriba funciona desde Excel 97 a 2007 sin cambiar nada. |
|
| Volver arriba |
|
 |
|