找回密码
 立即注册

QQ登录

只需一步,快速开始

Bennu

注册会员

4

主题

16

帖子

36

积分

注册会员

积分
36
最新发帖

[已处理] 公式设置

Bennu
注册会员   /  发表于:2021-11-29 10:49  /   查看:2163  /  回复:2
100金币
1、单元格填充数据 image.png740868224.png
2、添加计算公式

sheet.setFormula(5, 4, '=SUM(E2:E5)')
3、合并单元格
image.png730928344.png

4、合并之后的公式数据结果不对
image.png980573425.png
5、再次调用公式
image.png561497191.png
6、数据结果还是不对

这个设置公式之后,合并单元格,公式结果应该跟着变化才对呀



最佳答案

查看完整内容

这个行为属于产品设计,也是与Excel的不同之处。我们的合并单元格逻辑是会保留所有被合并单元格的值,也就是取消合并后所有的值都保留。而excel只保留合并单元格左上角的值。因此,在SpreadJS无论是否合并,只要对应的单元格还有值,那么这个值就会被计算。 如果不希望被计算,则需要在合并后,将合并单元格中除左上角的值都清除掉。

2 个回复

倒序浏览
最佳答案
最佳答案
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-11-29 10:49:51
来自 3#
这个行为属于产品设计,也是与Excel的不同之处。我们的合并单元格逻辑是会保留所有被合并单元格的值,也就是取消合并后所有的值都保留。而excel只保留合并单元格左上角的值。因此,在SpreadJS无论是否合并,只要对应的单元格还有值,那么这个值就会被计算。

如果不希望被计算,则需要在合并后,将合并单元格中除左上角的值都清除掉。
回复 使用道具 举报
Bennu
注册会员   /  发表于:2021-11-29 10:52:36
2#
// 合并单元格 addSpan
      sheet.addSpan(
        selections[0].row,
        selections[0].col,
        selections[0].rowCount,
        selections[0].colCount
      )
合并单元格代码如下
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部