RE:Funciones de Excel -exportar DW a Excel y sumar
Lógico, primero debes realizar la conexión a Excel. Acá tienes un ejemplo para exportar un DW a Excel, luego sumar un cierto rango de celdas:
long ll_numcols , ll_numrows , ll_c, ll_r
OLEObject xlapp , xlsub
int li_ret
// Coloca el número de columnas y filas a copiar
// Este script copia todo el DW
ll_numcols = long(dw_1.Object.DataWindow.Column.Count)
ll_numrows = dw_1.RowCount()
// Crea el oleobject en la variable xlapp
xlApp = Create OLEObject
// Se conecta a Excel y verifica el código de retorno
li_ret = xlApp.ConnectToNewObject( "Excel.Sheet" )
if li_ret < 0 then
MessageBox("Error Conectandose a Excel !",string(li_ret))
return
end if
// Abre un archivo especifico de Excel
xlApp.Application.Workbooks.Open("c:\ejemplo.xls") //,false,true
// Hace Excel visible
xlApp.Application.Visible = true
xlsub = xlapp.Application.ActiveWorkbook.Worksheets[1]
// El for/next loop copia todas las filas de cada columna
For ll_c = 1 to ll_numcols
For ll_r = 1 to ll_numrows
xlsub.cells[ll_r,ll_c] = dw_1.object.data[ll_r,ll_c]
Next
Next
//Obtener una suma (o cualquier fórmula) en la fila 5 y columna 4
xlsub.Cells(5, 4).Formula = "=SUMA(D1:D3)"
//Fecha actual
xlsub.Cells(6, 4).Formula = "=AHORA()"
// Guarda el archivo abierto
//xlApp.Application.Activeworkbook.Save()
// Guarda el archivo con diferente nombre
//xlApp.Application.Activeworkbook.SaveAs("c:\ejemplo2.xls")
// se desconecta de excel
xlApp.DisConnectObject()
Destroy xlapp
//----------------Fin-----------------------------