Power Builder - Funciones de Excel

 
Vista:

Funciones de Excel

Publicado por Rai (1 intervención) el 28/06/2005 00:46:14
ke onda...
Haber kien me puede decir como usar las funciones de excel en especial las funciones financieras .. .. en un programa en power builder 8.0 ...
ojala me puedan ayudar...
saludos... gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Funciones de Excel

Publicado por Oscar (1178 intervenciones) el 28/06/2005 05:35:25
Desde PB se pueden ejecutar las funciones de Excel y quedan registradas en una hoja de Excel.

Ejemplo:
Luego de conectarte a Excel, la línea que ejecuta una fórmula es:

//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()"

Luego de ejecutar esas fórmulas en la hoja de cálculo, es posible importar esos resultados a un DW; aunque, creo, se estaría dando muchas vueltas. Lo más razonable es que tú mismo debas crear esas funciones directamente en PB.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Funciones de Excel

Publicado por Guillermo (68 intervenciones) el 01/07/2005 20:08:58
No me funciona el comando

xlsub.Cells(5, 4).Formula = "=SUMA(D1:D3)"

Me sale el siguiente error :

Undefined variable xlsub
Illegal expression on left side of assignment
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Funciones de Excel -exportar DW a Excel y sumar

Publicado por Oscar (1178 intervenciones) el 01/07/2005 22:26:08
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-----------------------------
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar