Buenos días, tengo una base de datos en foxpro 2.5b quiero pasarla a excel pero NO como un COPY TO TYPE XLS, si no desde programación abrir el excel y poder diseñar la hoja en cuanto a tipo, tamaño de letra, colocarle líneas, etc. Desde Vfp6 lo he hecho pero esto no me funciona para foxpro 2.5b En foxpro 2.5b llego hasta la parte donde ejecuto el excel con el comando RUN C:\XXXX\EXCEL.EXE pero no se como decirle que me maquille los datos.
Agradezco si alguien tiene un ejemplo, mi correo es [email protected] Gracias, PD. Es para foxpro 2.5b y no para vfp
estudiate este codigo ... IF USED('AUXCAJ2') SELECT AUXCAJ2 USE ENDIF CREATE VIEW AUXCAJ2 AS SELECT SPACE(10) AS NIT, SPACE(48) AS NOMBRE, SALDFG, SALDFP FROM AUXCAJA WHERE NIT='99999999999999' SELECT 0 USE AUXCAJ2 APPEND FROM C:\TMPS\INF12.TXT SDF GO TOP DELETE FROM AUXCAJ2 WHERE SALDFG=0 AND SALDFP=0 GO TOP **-- Declarando variable de manejo de errores LOCAL IcErrorAnt WAIT WINDOWS 'Un momento por favor abriendo Excel' NOWAIT **-- Obtener el objeto hoja de excel (Abrir el Excel) oHojaXL=GETOBJECT('PRUEBA','Excel.Sheet') **-- VErificar si excel esta instalado IF VARTYPE(oHojaXl)<>'O' =MESSAGEBOX('No se detecta EXCEL en su PC',0+16+0,'Verificar Archivo Excel') RETURN ENDIF **-- Crear el objeto Aplicacion Excel oExcelApp=OHojaXl.Application oExcelApp.Visible=.T. && Visible EXcel **-- Añadir un libro de excel oExcelApp.WorkBooks.Add() **-- Activa la Hoja de Excel oHojaXl=oExcelApp.ActiveSheet **-- Llevar titulos a Excel mfila=1 oHojaXL.Cells(mFila,2)='SALDO FINAL DE CAJAS HASTA '+DTOC(WHASTA) mfila=mfila+2 **-- Llevar subtitulos a Excel oHojaXL.Columns('A:E').EntireColumn.AutoFit oHojaXL.Cells(mFila,1)='Codigo' oHojaXL.Cells(mFila,2)='Nombre Cliente' oHojaXL.Cells(mFila,3)='Grandes' oHojaXL.Cells(mFila,4)='Pequeñas' mFila=mFila+2 **-- Llenar los registros en excel *SELECT * FROM g_client ORDER BY NOMBRE INTO CURSOR W1 SELECT AUXCAJ2 GO TOP STORE 0 TO MtotalG,Mtotalp,Windica DO WHILE .NOT.EOF() SCATTER MEMVAR * IF ((m.saldig-m.entrag)+m.salidg)>0 OR ((m.saldip-m.entrap)+m.salidp)>0 IF VAL(M.nit)=100 * IF Windica=1 * SKIP * LOOP * ELSE * m.nombre='PLATAFORMA - BOGOTA' * m.nit='005000' * ENDIF * Windica=1 ENDIF oHojaXL.Cells(mfila,1)=ALLTR(m.nit) IF VAL(m.nit)=100 m.nombre='.'+SUBSTR(m.Nombre,1,50) ENDIF IF VAL(m.nit)=1000 m.nombre='..'+SUBSTR(m.Nombre,1,50) ENDIF oHojaXL.Cells(mfila,2)=SUBSTR(m.Nombre,1,50) oHojaXL.Cells(mfila,3)=m.saldFg oHojaXL.Cells(mfila,4)=m.saldFp MtotalG=MtotalG+m.saldFg MtotalP=MtotalP+m.saldFp mfila=mfila+1 * ENDIF SKIP ENDDO mFila=mFila+1 oHojaXL.Cells(mfila,2)='TOTAL GENERAL' oHojaXL.Cells(mfila,3)=MtotalG oHojaXL.Cells(mfila,4)=MtotalP SELECT AUXCAJ2 USE **-- dar formato a la columna C oExcelApp.Columns('C:C').select oExcelApp.selection.NumberFormat='#,##0' oExcelApp.Columns('D:D').select oExcelApp.selection.NumberFormat='#,##0' ** indicar tamaño fijo de fijo para la columna A *oExcelApp.Columns('A:A').ColumnWidth=10.71 *oExcelApp.Columns('B:B').ColumnWidth=35.00 **--Indicar tamaño incremental con base a los registros de cada columna *oHojaXL.Columns('A:B').EntireColumn.AutoFit **-- Indicar Fuente oExcelApp.Range(oHojaXL.Cells(1,2),oHojaXL.Cells(1,2)).select oExcelApp.Selection.Font.Name='Arial' oExcelApp.Selection.Font.size=14 **-- dar color al pie de pagina oExcelApp.Range(oHojaXL.Cells(mfila,1),oHojaXL.Cells(mfila,4)).select oExcelApp.Selection.Font.Bold=.T. oExcelapp.Selection.Interior.colorindex=35 && Verde Marino **-- dar color a los titulos oExcelApp.Range(oHojaXL.Cells(1,1),oHojaXL.Cells(1,4)).select oExcelApp.Selection.Font.Bold=.T. oExcelapp.Selection.Interior.colorindex=35 && Verde Marino **-- dar color a los subtitulos oExcelApp.Range(oHojaXL.Cells(3,1),oHojaXL.Cells(3,4)).select oExcelApp.Selection.Font.Bold=.T. oExcelapp.Selection.Interior.colorindex=35 && Verde Marino IF USED('AUXCAJ2') SELECT AUXCAJ2 USE Endif