找回密码
 立即注册

QQ登录

只需一步,快速开始

scshptc

注册会员

11

主题

31

帖子

92

积分

注册会员

积分
92
scshptc
注册会员   /  发表于:2022-1-10 16:21  /   查看:3341  /  回复:10
1金币
版本14.2.2 遇到过数据是字符串导致公式计算异常的问题,当时的解决方案是把数据变成数字。现在这个方案有点问题,比如一个格子填写成0.000 如果按数字展示出来就是0.0,不是我这边需要的,我这边需要原样展示成0.000。不知道这个问题解决没?




最佳答案

查看完整内容

getText 表示获取单元格的显示值。 getValue表示获取单元格的实际值value。 如下图,A1单元格设置格式为'0.00',即保留两位小数:

10 个回复

倒序浏览
最佳答案
最佳答案
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-1-10 16:21:59
来自 11#
getText 表示获取单元格的显示值。
getValue表示获取单元格的实际值value。
如下图,A1单元格设置格式为'0.00',即保留两位小数: image.png672316283.png
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-1-10 17:10:47
2#
您好,
有个方案您可以参考下:
监听 EditEnded事件,通过 args.editingText 方法获取实际输入的value,
进一步获取其小数位数(如两位小数)。
根据小数位数使用 setFormatter 方法设置相应的数值格式(如保留两位小数:"0.00")
回复 使用道具 举报
scshptc
注册会员   /  发表于:2022-1-11 09:59:08
3#
本帖最后由 scshptc 于 2022-1-11 10:04 编辑

image.png714553222.png 将这段数据绑定到格子后,发现只有数字类型的数据才能正确计算。我想达到的效果是字符类型数据也能正确计算。转数字再绑的话,部分数据就和用户输入的不一致了。现在只有第一行正确计算,我期望的是第2,3行绑定字符串也能正确计算。

designer.rar

1.76 KB, 下载次数: 254

回复 使用道具 举报
scshptc
注册会员   /  发表于:2022-1-11 10:09:48
4#
目前我就发现这个公式有问题,为了保险我把数据都转了数字,这就导致了,部分用户输入的数据展示时出现了问题。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-1-11 11:02:14
5#
使用getText方法可以获取单元格的显示值, image.png392217101.png


您可以在”转数字“时根据获取的text值,给单元格设置相应的formatter(如保留四位小数:"0.0000")。
这样转之后的数字也可以显示为 0.0000了,而不是 0。

image.png922112426.png
回复 使用道具 举报
scshptc
注册会员   /  发表于:2022-1-11 11:22:32
6#
本帖最后由 scshptc 于 2022-1-11 11:24 编辑

不能把数字的判断做到公式里面去嘛?就像sum一样,字符串也没得问题。挨个去设置formatter 这个不现实。 image.png551073913.png sum就没得问题。
回复 使用道具 举报
scshptc
注册会员   /  发表于:2022-1-11 11:32:37
7#
本帖最后由 scshptc 于 2022-1-11 11:37 编辑

我需要的是通过json去绑定数据的时候,数字字符串也能给出正确结果,而不是每次都去转数字。希望你们把部分系统公式调整下。 image.png553339843.png 在此阶段统一带入字符串,不用转数字。我现在转成数字就是因为发现STDEV公式传入字符串会无法计算。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2022-1-11 12:21:24
8#
SJS在公式设计上是与Excel保持一致的,所以STDEV公式不支持参数为字符串,这一点也是与Excel一样的。
如下图:
image.png53717345.png
建议您采用前面提供的方案。

回复 使用道具 举报
scshptc
注册会员   /  发表于:2022-1-11 14:17:46
9#
本帖最后由 scshptc 于 2022-1-11 14:19 编辑

这样处理起来很麻烦,加了 setFormatter 后,getgetValue取出来的数据还是没加格式之前的数据。比如0.00 取出来还是0 我这要把excel的数据原封原样的取出来再保存到数据库。
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部