I have an Excel file with named excel tables for VLOOKUP
in a sheet.
I'm trying to get the VLOOKUP
result in another sheet by referencing through the Gender_lookup
table. I am using the formula =VLOOKUP(TRIM(CLEAN([@[Gender ]])),Gender_lookup,2,0)
which takes Gender
value from current row in my table and checks for corresponding Gender
value in Gender_lookup
table in another sheet. The formula is valid and working in excel.
I have also raised an issue in bugzilla for reference with all attachments
I tried evaluating with XSSFFormulaEvaluator.evaluateAllFormulaCells(workbook)
which gives me the exception:
org.apache.poi.ss.formula.FormulaParseException: The column doesn't exist in table Gender_lookup
at org.apache.poi.ss.formula.FormulaParser.parseStructuredReference(FormulaParser.java:821)
at org.apache.poi.ss.formula.FormulaParser.parseNonRange(FormulaParser.java:908)
at org.apache.poi.ss.formula.FormulaParser.parseRangeable(FormulaParser.java:498)
at org.apache.poi.ss.formula.FormulaParser.parseRangeExpression(FormulaParser.java:322)
at org.apache.poi.ss.formula.FormulaParser.parseSimpleFactor(FormulaParser.java:1548)
at org.apache.poi.ss.formula.FormulaParser.percentFactor(FormulaParser.java:1506)
at org.apache.poi.ss.formula.FormulaParser.powerFactor(FormulaParser.java:1493)
at org.apache.poi.ss.formula.FormulaParser.Term(FormulaParser.java:1867)
at org.apache.poi.ss.formula.FormulaParser.additiveExpression(FormulaParser.java:1994)
at org.apache.poi.ss.formula.FormulaParser.concatExpression(FormulaParser.java:1978)
at org.apache.poi.ss.formula.FormulaParser.comparisonExpression(FormulaParser.java:1935)
at org.apache.poi.ss.formula.FormulaParser.intersectionExpression(FormulaParser.java:1908)
at org.apache.poi.ss.formula.FormulaParser.Arguments(FormulaParser.java:1479)
at org.apache.poi.ss.formula.FormulaParser.function(FormulaParser.java:1352)
at org.apache.poi.ss.formula.FormulaParser.parseNonRange(FormulaParser.java:905)
at org.apache.poi.ss.formula.FormulaParser.parseRangeable(FormulaParser.java:498)
at org.apache.poi.ss.formula.FormulaParser.parseRangeExpression(FormulaParser.java:322)
at org.apache.poi.ss.formula.FormulaParser.parseSimpleFactor(FormulaParser.java:1548)
at org.apache.poi.ss.formula.FormulaParser.percentFactor(FormulaParser.java:1506)
at org.apache.poi.ss.formula.FormulaParser.powerFactor(FormulaParser.java:1493)
at org.apache.poi.ss.formula.FormulaParser.Term(FormulaParser.java:1867)
at org.apache.poi.ss.formula.FormulaParser.additiveExpression(FormulaParser.java:1994)
at org.apache.poi.ss.formula.FormulaParser.concatExpression(FormulaParser.java:1978)
at org.apache.poi.ss.formula.FormulaParser.comparisonExpression(FormulaParser.java:1935)
at org.apache.poi.ss.formula.FormulaParser.intersectionExpression(FormulaParser.java:1908)
at org.apache.poi.ss.formula.FormulaParser.unionExpression(FormulaParser.java:1889)
at org.apache.poi.ss.formula.FormulaParser.parse(FormulaParser.java:2036)
at org.apache.poi.ss.formula.FormulaParser.parse(FormulaParser.java:170)
at org.apache.poi.xssf.usermodel.XSSFEvaluationWorkbook.getFormulaTokens(XSSFEvaluationWorkbook.java:85)
at org.apache.poi.ss.formula.WorkbookEvaluator.evaluateAny(WorkbookEvaluator.java:271)
at org.apache.poi.ss.formula.WorkbookEvaluator.evaluate(WorkbookEvaluator.java:216)
at org.apache.poi.xssf.usermodel.BaseXSSFFormulaEvaluator.evaluateFormulaCellValue(BaseXSSFFormulaEvaluator.java:56)
at org.apache.poi.ss.formula.BaseFormulaEvaluator.evaluate(BaseFormulaEvaluator.java:110)
at practcie.Vlookup.main(Vlookup.java:97)