Fiooona 发表于 2020-5-5 17:00:42

如何判断页面中公式是否计算错误?

在SpreadJS中公式计算出错会给出相应的提示,例如:#Value、#REF等等,这些报错与Excel中的公式报错机制是一样的。文章:公式中的常见报错#value,#N/A,#REF都是什么意思?中有相关的解释。
API文档中也罗列了几种出错的类型:https://demo.grapecity.com.cn/spreadjs/help/latest/content/resulterror.html。
背景:用户想要根据公式出错的类型给出相应的提示,所以需要判断公式是否计算出错。

解决方法:通过getValue的返回值进行判断,看返回的对象是否是一个CalcError对象(GC.Spread.CalcEngine.CalcError).
例果单元格A1中输入:“=B1/C1”计算出错导致页面显示:#DIV/0!
此时,sheet.getValue(0,0) instanceof GC.Spread.CalcEngine.CalcError返回 true。
通过sheet.getValue(0,0) 可以得到返回值如下:
"_code: 7 _error: "#DIV/0!" "


根据返回值可以做出相应的判断。

页: [1]
查看完整版本: 如何判断页面中公式是否计算错误?