java - generate excel sheet using Apache poi with Email Validation -
i generating excel sheet using apache poi email --that means after generating excel if user enter email in cell need validate email
below code
dvconstraint emailconstraint=null; datavalidation emaildatavalidation =null; emailconstraint=dvconstraint.createcustomformulaconstraint("and(find("+'@'+",$a$2),find(.,$a$2),iserror(find( ,$a$2)))");---->getting error here emaildatavalidation =datavalidationhelper.createvalidation(emailconstraint, addresslist1); emaildatavalidation.setsuppressdropdownarrow(false); sheet.addvalidationdata(emaildatavalidation);
when execute method getting following error
stacktrace:] 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 @ org.apache.poi.ss.formula.formulaparser.expected(formulaparser.java:188) @ org.apache.poi.ss.formula.formulaparser.parsesimplefactor(formulaparser.java:1128) @ org.apache.poi.ss.formula.formulaparser.percentfactor(formulaparser.java:1083) @ org.apache.poi.ss.formula.formulaparser.powerfactor(formulaparser.java:1070) @ org.apache.poi.ss.formula.formulaparser.term(formulaparser.java:1430) @ org.apache.poi.ss.formula.formulaparser.additiveexpression(formulaparser.java:1530) @ org.apache.poi.ss.formula.formulaparser.concatexpression(formulaparser.java:1514) @ org.apache.poi.ss.formula.formulaparser.comparisonexpression(formulaparser.java:1471) @ org.apache.poi.ss.formula.formulaparser.arguments(formulaparser.java:1056) @ org.apache.poi.ss.formula.formulaparser.function(formulaparser.java:943) @ org.apache.poi.ss.formula.formulaparser.parsenonrange(formulaparser.java:536) @ org.apache.poi.ss.formula.formulaparser.parserangeable(formulaparser.java:416) @ org.apache.poi.ss.formula.formulaparser.parserangeexpression(formulaparser.java:237) @ org.apache.poi.ss.formula.formulaparser.parsesimplefactor(formulaparser.java:1123) @ org.apache.poi.ss.formula.formulaparser.percentfactor(formulaparser.java:1083) @ org.apache.poi.ss.formula.formulaparser.powerfactor(formulaparser.java:1070) @ org.apache.poi.ss.formula.formulaparser.term(formulaparser.java:1430) @ org.apache.poi.ss.formula.formulaparser.additiveexpression(formulaparser.java:1530) @ org.apache.poi.ss.formula.formulaparser.concatexpression(formulaparser.java:1514) @ org.apache.poi.ss.formula.formulaparser.comparisonexpression(formulaparser.java:1471) @ org.apache.poi.ss.formula.formulaparser.arguments(formulaparser.java:1056) @ org.apache.poi.ss.formula.formulaparser.function(formulaparser.java:943) @ org.apache.poi.ss.formula.formulaparser.parsenonrange(formulaparser.java:536) @ org.apache.poi.ss.formula.formulaparser.parserangeable(formulaparser.java:416) @ org.apache.poi.ss.formula.formulaparser.parserangeexpression(formulaparser.java:237) @ org.apache.poi.ss.formula.formulaparser.parsesimplefactor(formulaparser.java:1123) @ org.apache.poi.ss.formula.formulaparser.percentfactor(formulaparser.java:1083) @ org.apache.poi.ss.formula.formulaparser.powerfactor(formulaparser.java:1070)
i tried lot not able it.
first parameter find function string hence must quoted. find("@",.. in java can use escape string character in between formula.
Comments
Post a Comment