找回密码
 立即注册

QQ登录

只需一步,快速开始

qsban

中级会员

46

主题

147

帖子

764

积分

中级会员

积分
764

微信认证勋章

qsban
中级会员   /  发表于:2017-12-22 14:21  /   查看:3812  /  回复:7
你好,
附件中的json串是我在java端自己拼接之后的串,然后放入spradjs中,为什么下图的这个公式没有生效呢?
blob81422118.png
这个公式是生效的。
blob368439940.png

json.zip

4.04 KB, 下载次数: 166

7 个回复

倒序浏览
CCKan
银牌会员   /  发表于:2017-12-22 15:12:34
沙发
你好,原因是 sheet 名字不一致引起的,改成
"sheets" : {
"Sheet2" : {...}
"Sheet3" : {...}
"2017年11月工龄模板20171222141610" : {...}
"0000000020171222141436" : {。。。}
}
回复 使用道具 举报
qsban
中级会员   /  发表于:2017-12-22 15:45:30
板凳
我把名字改成一致了,然后导入spreadjs中,还是没有计算呀?我手动改一下E4单元格才计算的。附件是我把名字改成一致的json。
blob425511168.png

json.zip

4.03 KB, 下载次数: 190

回复 使用道具 举报
CCKan
银牌会员   /  发表于:2017-12-22 15:56:45
地板
不是因为没有算,而是 E 那一列的数据类型不对,是 string 类型,改成 number 类型的数据就好了
回复 使用道具 举报
qsban
中级会员   /  发表于:2017-12-22 16:06:03
5#
这个单元格的style是 下面的这个样式,这样不是数值吗? 原本导入到spreadjs中,我看也是数值类型的呀?
{"formatter":"0.00","vAlign":1,"wordWrap":false,"font":"normal normal 14.7px calibri","name":"__buiglNum","hAlign":3,"foreColor":"#000000","locked":true,"textIndent":""}
blob615214843.png
回复 使用道具 举报
CCKan
银牌会员   /  发表于:2017-12-22 16:09:51
6#
那个是 formatter,只决定了显示成什么样子,或者说单元格的 text, 但是 单元格中实际保存的真实值还是 string 类型:

"5" : {
        "style" : "__buiNum",
        "formula" : "IF(E3<=0,0,IF(E3<=11,100,IF(E3>11,200,0)))"
},
"4" : {
        "value" : "12",
        "style" : "__buiglNum"
},
"9" : {
        "value" : "12",
        "style" : "__buiglNum"
},

需要改成:
"5" : {
        "style" : "__buiNum",
        "formula" : "IF(E3<=0,0,IF(E3<=11,100,IF(E3>11,200,0)))"
},
"4" : {
        "value" : 12,
        "style" : "__buiglNum"
},
"9" : {
        "value" : 12,
        "style" : "__buiglNum"
},
回复 使用道具 举报
qsban
中级会员   /  发表于:2017-12-22 16:15:59
7#
好的,知道了,是把数据类型弄成string的了,不是单元格的。谢谢了。
回复 使用道具 举报
Clark.Pan讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-12-22 19:17:56
8#
那就结帖了,有什么问题欢迎另开新帖进行询问。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部