Cells with formula

Good morning to all,

till now j always used Excel file without formula.

In this file(s) j have on

column 1 the code product,

column 2 produtd name

column 3 produtc selling price

column 4 product vat

column 5 product price - vat

but, from few days ago in this Excel file now the column 5 is present not a number but one formula as


Another problem is who j work with the arranged file with the columns as above, but the original files sended to me from custumer/client are not with the columns as above.

Now j can check with column has the formula and replace the result with the currency value (two digit).

In real case this is what j have in column 5 from one file and in column 4 in the other (same value) calculated with this formula =E12*(1-I12)

14.63 with Excel

14.6319545454545 in flexcel grid

how can j show 14.63 ??

J need to set

TFlxFormat f := Xls.GetDefaultFormat;

f.Format := '#,##0.00';

for the column X where j get the formaula =E12*(1-I12)

Excuse me for bad explanation and for this problem, but j'm new in working with formula in cells/columns

Best regard



You just need to do as you wrote:

TFlxFormat f := Xls.GetDefaultFormat;

f.Format := '#,##0.00';

And then


And finally grid.LoadSheet

Hi Adrian,

sorry but j missed (for a while) the concept that j must aplly the new format at every cells that contain formula.

Now j can handle cells with formula with this code post in dobule cycle (row/col)

      Value := Xls.GetCellValue(Row, Col, XF);

      if (Value.IsFormula) then



        Fmt.Format := '###,###,##0.00';



But, is not finish here ! unfortunately for me !!!

If the cell contain formula ok, but if the cell contain a currency value only with 8-10 decimal like 20,7545454545455.

How is possible set the new format for that cell ?

J tried with Value.Isnumber but the cells with the date or % are number as well and j need to avoid to change the format.

Thank's again for your help.







This is so you keep all the existing format in the cell(like font or fill color). But also, you can now do:

if (Value.IsFormula or Value.IsNumber) and (Fmt.Format = '')then

This will only modify cell which didn't had already a format assigned