I am generating excel sheet using apache poi for email --that means after generating excel if user enter email in the cell i need to validate that email
below is my code
DVConstraint EmailConstraint=null;
DataValidation EmaildataValidation =null;
EmailConstraint=DVConstraint.createCustomFormulaConstraint("AND(FIND("+'@'+",$A$2),FIND(.,$A$2),ISERROR(FIND( ,$A$2)))");---->getting error here only
EmaildataValidation =dataValidationHelper.createValidation(EmailConstraint, addressList1);
EmaildataValidation.setSuppressDropDownArrow(false);
sheet.addValidationData(EmaildataValidation);
when i execute this method i am getting following error
Stacktrace:] with root cause
org.apache.poi.ss.formula.FormulaParseException: Parse error near char 9 '@' in specified formula 'AND(FIND(@,$A$2),FIND(.,$A$2),ISERROR(FIND( ,$A$2)))'. Expected cell ref or constant literal
at org.apache.poi.ss.formula.FormulaParser.expected(FormulaParser.java:188)
at org.apache.poi.ss.formula.FormulaParser.parseSimpleFactor(FormulaParser.java:1128)
at org.apache.poi.ss.formula.FormulaParser.percentFactor(FormulaParser.java:1083)
at org.apache.poi.ss.formula.FormulaParser.powerFactor(FormulaParser.java:1070)
at org.apache.poi.ss.formula.FormulaParser.Term(FormulaParser.java:1430)
at org.apache.poi.ss.formula.FormulaParser.additiveExpression(FormulaParser.java:1530)
at org.apache.poi.ss.formula.FormulaParser.concatExpression(FormulaParser.java:1514)
at org.apache.poi.ss.formula.FormulaParser.comparisonExpression(FormulaParser.java:1471)
at org.apache.poi.ss.formula.FormulaParser.Arguments(FormulaParser.java:1056)
at org.apache.poi.ss.formula.FormulaParser.function(FormulaParser.java:943)
at org.apache.poi.ss.formula.FormulaParser.parseNonRange(FormulaParser.java:536)
at org.apache.poi.ss.formula.FormulaParser.parseRangeable(FormulaParser.java:416)
at org.apache.poi.ss.formula.FormulaParser.parseRangeExpression(FormulaParser.java:237)
at org.apache.poi.ss.formula.FormulaParser.parseSimpleFactor(FormulaParser.java:1123)
at org.apache.poi.ss.formula.FormulaParser.percentFactor(FormulaParser.java:1083)
at org.apache.poi.ss.formula.FormulaParser.powerFactor(FormulaParser.java:1070)
at org.apache.poi.ss.formula.FormulaParser.Term(FormulaParser.java:1430)
at org.apache.poi.ss.formula.FormulaParser.additiveExpression(FormulaParser.java:1530)
at org.apache.poi.ss.formula.FormulaParser.concatExpression(FormulaParser.java:1514)
at org.apache.poi.ss.formula.FormulaParser.comparisonExpression(FormulaParser.java:1471)
at org.apache.poi.ss.formula.FormulaParser.Arguments(FormulaParser.java:1056)
at org.apache.poi.ss.formula.FormulaParser.function(FormulaParser.java:943)
at org.apache.poi.ss.formula.FormulaParser.parseNonRange(FormulaParser.java:536)
at org.apache.poi.ss.formula.FormulaParser.parseRangeable(FormulaParser.java:416)
at org.apache.poi.ss.formula.FormulaParser.parseRangeExpression(FormulaParser.java:237)
at org.apache.poi.ss.formula.FormulaParser.parseSimpleFactor(FormulaParser.java:1123)
at org.apache.poi.ss.formula.FormulaParser.percentFactor(FormulaParser.java:1083)
at org.apache.poi.ss.formula.FormulaParser.powerFactor(FormulaParser.java:1070)
I tried a lot but not able do it.
@
sign in the formula? – Gagravarr