Derrick.Jiao 发表于 2021-8-17 11:36:44

自定义公式报错信息

SpreadJS兼容90%以上的Excel公式,公式的出错信息也是和Excel一样,例如常见的#Value、#REF、#N/A等。上面这些报错信息具体代表的是什么意思呢?我们可以参考这篇技术文章。
https://gcdn.grapecity.com.cn/showtopic-73967-1-1.html

在本篇技术教程中,我们将实现如何根据公式报错自定义报错信息,我们通过自定义单元格来实现这个需求。
核心代码如下,我们通过paint方法修改单元格的value,下面的代码就是通过判断单元格的#DIV/0的错误实现自定义内容。
function ShowValueCellType() {
    }
    ShowValueCellType.prototype = new spreadNS.CellTypes.Text();
    ShowValueCellType.prototype.paint = function (ctx, value, x, y, w, h, style, options) {
      if (value && value._error === "#DIV/0!") {
            // 在这里改变值
            value = "我是错误值";
      }
      spreadNS.CellTypes.Text.prototype.paint.apply(this, );
    };

我们知道除以0值的时候会出现#DIV/0,通过自定义单元格后,可以看下具体的效果。


下载附件即可查看完整demo
页: [1]
查看完整版本: 自定义公式报错信息