Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Servers (https://www.clubdelphi.com/foros/forumdisplay.php?f=9)
-   -   Funciones de Excel desde delphi (https://www.clubdelphi.com/foros/showthread.php?t=35562)

JuanPa1 14-09-2006 00:10:45

Funciones de Excel desde delphi
 
Hola a todos, quiero desde delphi utilizar la siguiente funcion de excel que me permita sumar los valores de una columna siempre que se cumpla una condicion en otra columna.
La funcion que necesito es esta, la misma que en excel me funciona perfectamente:
=SUMAR.SI(C4:C40;"=Excelente";D4:D40)

En delphi al sumar solo los valores de una columna sin comprobar ninguna condición me funciona bien la siguiente linea:

ExcelA.Range['D'+LineString, 'D'+LineString].Value[oleVar]:='=sum(D4:D40)';

Mi problema es que no se como deberia codificar esa funcion en delphi, le he puesto igual que la anterior funcion y la aplicacion se ejecuta pero cuando llego a la parte que debe mostrar el archivo de excel con el resultado de la funcion me da el error 'OLE error 800A03EC'.

Si alguien tiene alguna idea o sugerencia de como solucionar esto le agradeceria.

roman 14-09-2006 00:17:09

Fíjate que en el segundo caso utilzas SUM y no SUMAR. Hasta donde he visto, no puedes usar los nombres en español via OLE, debes usar los nombres en inglésde las funciones.

// Saludos

JuanPa1 14-09-2006 17:09:49

Ya le he cambiado de lenguaje y me sigue dando el mismo error. Mira estoy tratando de utilizar esta funcion porque tengo el mismo problema con un TQRExpr la misma que nose como obtener el resultado de esta expresion para luego ese resultado pasarselo a excel.
La expresion es esta: Sum(if(ADOReportLogin.Answer_Code = 1, ADOReportLogin.Total, 0))
Si tienes alguna idea de como obtener el resultado de esta expresion te agradeceria, he buscado en el foro pero lo que ahi encontre no me ayudo a resolver esto.

roman 14-09-2006 17:59:10

Pero tal como la pones aquí es muy distinta de la anterior y no puede funcionar así. A Excel tienes que pasarle algo que entienda, como SUM o IF, pero no puedes pasarle directamente código Delphi como ADOReportLogin.Answer_Code o ADOReportLogin.Total.

// Saludos


La franja horaria es GMT +2. Ahora son las 08:16:17.

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