以下代码为我提供了所有函数的列表,Apache POI目前不支持这些函数:
Collection<String> unsupportedFuncs = WorkbookEvaluator.getNotSupportedFunctionNames();
for (String unsupportedFunc : unsupportedFuncs) {
System.out.println(unsupportedFunc);
}
我对特定excel文件中不支持的函数/公式更感兴趣。有没有办法获得这些功能的列表?
我已经通过查看所有工作表的所有单元格来“手动”执行此操作,检查它是否为类型公式,将其添加到列表中并通过擦除重复项将此列表调整为上面的列表(请参阅项目“UnsupportedFormulas”在我的GitHub上:https://github.com/Joey73/poi)。
是不是有更容易和更好的方法来做到这一点?
答案 0 :(得分:0)
on Apache POI examples完全符合您的要求
CheckFunctionsSupported的javadoc将其描述为:
尝试重新评估工作簿中的所有公式,并报告Apache POI不支持(当前)使用的公式函数(如果有)。
这提供了如何使用Apache POI评估excel文件中的公式的示例,以及如何在执行此操作时处理错误。
您可以在POI示例jar中找到此程序,也可以抓取the source from SVN。针对您的文件运行该输出,输出将告诉您不支持使用的任何公式函数,以及遇到的公式评估错误