请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

bingdaoice

高级会员

44

主题

206

帖子

1932

积分

高级会员

积分
1932
bingdaoice
高级会员   /  发表于:2021-2-7 13:53  /   查看:76  /  回复:10
1金币
请问有公式的单元格,1、如何在计算结果改变时触发事件?
2、并获取改变结果前的值?
我测试过。Data_Changed、CellChanged、Change、EditChange都不能获取。


image.png298347167.png


spread_公式值获取问题.rar

18.37 MB, 下载次数: 1

10 个回复

倒序浏览
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-2-7 14:16:16
沙发
您好,问题已收到,感谢反馈,预计明天给您答复。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-2-9 01:47:24
板凳
你好,目前确实没有事件可以触发公式单元格的值变化,我会和研发再确认看看有没有其他的办法,然后给你回复
回复 使用道具 举报
bingdaoice
高级会员   /  发表于:2021-2-18 08:47:56
地板
Richard.Ma 发表于 2021-2-9 01:47
你好,目前确实没有事件可以触发公式单元格的值变化,我会和研发再确认看看有没有其他的办法,然后给你回复

感谢版主,凌晨了都还在处理问题。
回复 使用道具 举报
KevinChen讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-2-18 09:26:52
5#
感谢您的反馈,有问题欢迎继续留言交流~
回复 使用道具 举报
bingdaoice
高级会员   /  发表于:3 天前
6#
本帖最后由 bingdaoice 于 2021-2-23 09:29 编辑

请问这个问题有其它的办法吗?能不能单元格公式值改变时触发一下EditChange这个事件。
因为EditChange这个事件就可以“获取改变结果前的值”。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:3 天前
7#
这个没有办法,目前唯一的办法是Sheet的CellChanged事件,来获取一个变化的范围,在里面去找公式单元格,如下图,获取的是一个单元格范围(Rowcount,Columncount),公式单元格值发生变化也会包含在内

image.png750203857.png

回复 使用道具 举报
bingdaoice
高级会员   /  发表于:3 天前
8#
Richard.Ma 发表于 2021-2-23 12:20
这个没有办法,目前唯一的办法是Sheet的CellChanged事件,来获取一个变化的范围,在里面去找公式单元格,如 ...

“目前唯一的办法是Sheet的CellChanged事件,来获取一个变化的范围,在里面去找公式单元格,如下图,获取的是一个单元格范围(Rowcount,Columncount),公式单元格值发生变化也会包含在内”
没太明白这句话,我使用了CellChanged,但只能在手动改变值的单元格触发。
公式的单元格没有触发。
请问有什么方法可以达到“有公式的单元格值改变时触发一个事件”?
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:3 天前
9#
本帖最后由 Richard.Ma 于 2021-2-23 16:57 编辑

以下图为例,B9=B1+B2+1,此时,改变B1,则触发的事件里,Row=0,Rowcount=9,Column=1,Columncount=1,也就是说,这个范围内有单元格发生变动,如果是此例中只有一个公式引用B1的话,那么肯定除了(1,1)单元格外,就是公式单元格(9,1)发生了变化当然如果是有多个公式引用B1的话,那么还会有单元格在这个范围里面,这个目前没有办法可以判断

如果改变的是B9单元格的公式本身,那么触发的此事件里,会是Row=8,Rowcount=1,Column=1,Columncount=1

image.png541557006.png
image.png492401427.png
回复 使用道具 举报
bingdaoice
高级会员   /  发表于:前天 10:29
10#
本帖最后由 bingdaoice 于 2021-2-24 10:32 编辑
Richard.Ma 发表于 2021-2-23 16:52
以下图为例,B9=B1+B2+1,此时,改变B1,则触发的事件里,Row=0,Rowcount=9,Column=1,Columncount=1,也 ...

好的。
请问能不能在新版本加上“让单元格公式值改变时触发一下EditChange这个事件”?或者“单元格公式值改变时触发一个事件”?
其实只要触发一个事件,我们就可以做一些操作了。

回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册