正如标题所说:当我尝试使用 XSSFDataValidationHelper 的方法 createFormulaListConstraint("...") 添加 DataValidationConstraint 时,根据我尝试在 MS Excel 中打开它时的弹出窗口,excel 文件的内容不正确。
当我使用 excel 创建数据验证时,此公式按预期工作:
=OFFSET(Sites!$A$2;0;0;COUNTA(Sites!$A:$A)- 1;1)
现在我正在尝试使用 apache poi 3.8 做同样的事情:
XSSFDataValidationConstraint siteNamesConstraint = (XSSFDataValidationConstraint) dvHelper.createFormulaListConstraint("=OFFSET('Sites'!$A$2;0;0;COUNTA('Sites'!$A:$A)- 1;1)");
打开excel文件时出现错误。
我也尝试过其他公式:
- =OFFSET('Sites'!$A$2;0;0;COUNTA('Sites'!$A:$A)- 1;1) (用''围绕工作表名称,用'=')
- OFFSET('Sites'!$A$2;0;0;COUNTA('Sites'!$A:$A)- 1;1) (用''围绕工作表名称,没有'=')
- =OFFSET(Sites!$A$2;0;0;COUNTA(Sites!$A:$A)- 1;1) (名称周围没有'',有'=')
- OFFSET(Sites!$A$2;0;0;COUNTA(Sites!$A:$A)- 1;1) (名称周围没有 '',没有 '=')
这些似乎都不正确。
在此之前我所拥有的只是“站点”!$A$2:$A$100 这很有效,但它在结果中包含了空白值,这不是我需要的。
我在这里做错了什么还是有另一种方法不在列表中包含空白值?