apache POI 3.12可以在不同的表格上进行VLOOKUP吗?假设我有一个公式如下(此公式适用于Excel):
VLOOKUP(N6,Baskets,14,0)
我正在尝试使用它从Baskets工作表中获取值,并在另一张工作表上使用它。
它给出了这个错误:
org.apache.poi.ss.formula.FormulaParseException: Specified named range 'Baskets' does not exist in the current workbook.
在搜索网页时,我还没有真正找到答案。 The POI API for VLOOKUP向我建议它只能用于当前工作表中指定的范围。但是,我可能只是在table_array的参数名称中添加含义。这就是我在文档上发现的所有内容。
在这里找到答案之后是我困惑的根源 根据{{3}},数组参数必须有多个列。第一列必须包含搜索条件,其他列必须包含用作索引参数的列。最后,index参数是相对于数组参数而不是工作簿的列索引。
答案 0 :(得分:2)
我为你找到了一个有效的例子。
formulaCell.setCellFormula("IF(ISERROR(VLOOKUP('" + Baskets + "'!$A$4:$A$360,'" + processName + "'!$A$2:$B$80,2,FALSE)),\"\",VLOOKUP('" + Baskets + "'!$A$4:$A$360,'" + processName + "'!$A$2:$B$80,2,FALSE))" );
我使用VLOOKUP查找,不同工作表中的数据等于当前工作表中的数据。
processName
只是一个用于比较我的数据的字符串。
我的问题是VLOOKUP声明周围的另一张!$A$4:$A$360
""
和''
的指定范围。