You are setting an incorrect formula. The IF function accepts three
arguments and you are passing four:

http://office.microsoft.com/en-us/excel-help/if-function-HP010069829.aspx?CTT=5&origin=HA010277524

Yegor

On Fri, Jan 27, 2012 at 10:38 AM, dpront <[email protected]> wrote:
> Hi,
>
>
>  Is this a bug from POI or a limitation of the API?  I am trying to insert
> a formula on a formula cell type but I am getting an error saying that "Too
> many arguments to function 'IF'. At most 3 were expected but got 4."
>
>  The full stack trace is:
>
>
>  Exception in thread "main"
> org.apache.poi.ss.formula.FormulaParseException: Too many arguments to
> function 'IF'. At most 3 were expected but got 4.
>        at
> org.apache.poi.ss.formula.FormulaParser.validateNumArgs(FormulaParser.java:1018)
>        at
> org.apache.poi.ss.formula.FormulaParser.getFunction(FormulaParser.java:975)
>        at 
> org.apache.poi.ss.formula.FormulaParser.function(FormulaParser.java:939)
>        at
> org.apache.poi.ss.formula.FormulaParser.parseNonRange(FormulaParser.java:558)
>        at
> org.apache.poi.ss.formula.FormulaParser.parseRangeable(FormulaParser.java:517)
>        at
> org.apache.poi.ss.formula.FormulaParser.parseRangeExpression(FormulaParser.java:268)
>        at
> org.apache.poi.ss.formula.FormulaParser.parseSimpleFactor(FormulaParser.java:1119)
>        at
> org.apache.poi.ss.formula.FormulaParser.percentFactor(FormulaParser.java:1079)
>        at
> org.apache.poi.ss.formula.FormulaParser.powerFactor(FormulaParser.java:1066)
>        at 
> org.apache.poi.ss.formula.FormulaParser.Term(FormulaParser.java:1426)
>        at
> org.apache.poi.ss.formula.FormulaParser.additiveExpression(FormulaParser.java:1526)
>        at
> org.apache.poi.ss.formula.FormulaParser.concatExpression(FormulaParser.java:1510)
>        at
> org.apache.poi.ss.formula.FormulaParser.comparisonExpression(FormulaParser.java:1467)
>        at
> org.apache.poi.ss.formula.FormulaParser.Arguments(FormulaParser.java:1051)
>        at 
> org.apache.poi.ss.formula.FormulaParser.function(FormulaParser.java:936)
>        at
> org.apache.poi.ss.formula.FormulaParser.parseNonRange(FormulaParser.java:558)
>        at
> org.apache.poi.ss.formula.FormulaParser.parseRangeable(FormulaParser.java:517)
>        at
> org.apache.poi.ss.formula.FormulaParser.parseRangeExpression(FormulaParser.java:268)
>        at
> org.apache.poi.ss.formula.FormulaParser.parseSimpleFactor(FormulaParser.java:1119)
>        at
> org.apache.poi.ss.formula.FormulaParser.percentFactor(FormulaParser.java:1079)
>        at
> org.apache.poi.ss.formula.FormulaParser.powerFactor(FormulaParser.java:1066)
>        at 
> org.apache.poi.ss.formula.FormulaParser.Term(FormulaParser.java:1426)
>        at
> org.apache.poi.ss.formula.FormulaParser.additiveExpression(FormulaParser.java:1526)
>        at
> org.apache.poi.ss.formula.FormulaParser.concatExpression(FormulaParser.java:1510)
>        at
> org.apache.poi.ss.formula.FormulaParser.comparisonExpression(FormulaParser.java:1467)
>        at
> org.apache.poi.ss.formula.FormulaParser.unionExpression(FormulaParser.java:1447)
>        at 
> org.apache.poi.ss.formula.FormulaParser.parse(FormulaParser.java:1568)
>        at 
> org.apache.poi.ss.formula.FormulaParser.parse(FormulaParser.java:176)
>        at
> org.apache.poi.hssf.model.HSSFFormulaParser.parse(HSSFFormulaParser.java:72)
>        at 
> org.apache.poi.hssf.usermodel.HSSFCell.setCellFormula(HSSFCell.java:601)
>        at 
> com.ExcelHandler.V2_2.ExcelWriter.createFormula(InsertRecord.java:955)
>        at 
> com.ExcelHandler.V2_2.ExcelWriter.insertBatchRecord(ExcelWriter.java:99)
>        at com.ExcelHandler.V2_2.ExcelWriter.main(ExcelWriter.java:303)
>
>  I've tried to convert the .xls file into a .xlsm just in case that the
> issue lies within HSSF only but XSSF throws the same exception.
>
>
> Thanks.
>
>
> --
> View this message in context: 
> http://apache-poi.1045710.n5.nabble.com/Creating-Formula-with-multiple-IF-statement-tp5434673p5434673.html
> Sent from the POI - User mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [email protected]
> For additional commands, e-mail: [email protected]
>

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to