找回密码
 立即注册

QQ登录

只需一步,快速开始

zhouhao

中级会员

69

主题

163

帖子

694

积分

中级会员

积分
694
zhouhao
中级会员   /  发表于:2021-10-14 09:51  /   查看:1264  /  回复:3
本帖最后由 zhouhao 于 2021-10-14 14:22 编辑

请问sum在进行计算时对单元格值进行了什么处理?为什么部分单元格内容会被当成数字计算呢?
图片.png98250426.png
图片.png767666625.png

3 个回复

倒序浏览
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-10-14 10:06:53
沙发
默认情况下,我们会将文本进行计算,而Excel不会。如果需要与Excel一致,不计算文本,可以通过下面的接口设置
GC.Spread.CalcEngine.ExcelCompatibleCalcMode = true
回复 使用道具 举报
zhouhao
中级会员   /  发表于:2021-10-14 10:21:01
板凳
Derrick.Jiao 发表于 2021-10-14 10:06
默认情况下,我们会将文本进行计算,而Excel不会。如果需要与Excel一致,不计算文本,可以通过下面的接口设 ...

为什么111z会当数字,111x不会呢?
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-10-14 11:36:29
地板
zhouhao 发表于 2021-10-14 10:21
为什么111z会当数字,111x不会呢?

在SpreadJS的逻辑中,如果不设置CalcMode会将参数强行转数字,而在这个逻辑里面回利用Date进行一些处理。只有111z能算出一个合法的Date,所以就按照date的OA值来运算了其他的invalid date直接当空处理。
1634182622(1).png653463744.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部