找回密码
 立即注册

QQ登录

只需一步,快速开始

EleVeN_C

注册会员

10

主题

24

帖子

104

积分

注册会员

积分
104

[已处理] 跨表公式问题

EleVeN_C
注册会员   /  发表于:2020-9-16 10:32  /   查看:4019  /  回复:3
1金币
spreadjs可以在加载excel的时候选择不导入公式但是这个是针对于整个excel的
如何能实现针对特定的公式不导入?

背景:spreadjs不支持跨表公式,但是导入的时候如果选择不导入公式,是能够取到跨表公式最终结果的
我想在excel加载的时候,如果公式是跨表公式则直接转换为值,其他公式则正常

最佳答案

查看完整内容

您好,SJS没有直接 针对特定公式设置忽略公式 的API。 需要您通过代码逻辑去实现。 这里有个思路您可以参考下: 导入引用公式的excel文件时,可以读取到引用公式的单元格的 formula 和 value。 如下图红框所示,原文件引用公式为 =[test2.xlsx]Sheet1!$A$2 ,这里获取到的 formula 已经改变。 不过引用公式有一个基本格式:[xxx]Sheet1!$A$2, 可以通过遍历单元格,使用hasFormula方法、getFormula方法判断公式是否为此 ...

3 个回复

倒序浏览
最佳答案
最佳答案
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-9-16 10:32:55
来自 2#
您好,SJS没有直接 针对特定公式设置忽略公式 的API。
需要您通过代码逻辑去实现。
这里有个思路您可以参考下:
导入引用公式的excel文件时,可以读取到引用公式的单元格的 formula 和 value。
如下图红框所示,原文件引用公式为   =[test2.xlsx]Sheet1!$A$2    ,这里获取到的 formula 已经改变。
image.png846672057.png
不过引用公式有一个基本格式:[xxx]Sheet1!$A$2, 可以通过遍历单元格,使用hasFormula方法、getFormula方法判断公式是否为此格式,
如果是,则使用setFormula方法(sheet.setFormula(row,col,null);)清除公式,
然后使用setValue方法将value 赋值单元格(图片红框所示 可以获取);
回复 使用道具 举报
EleVeN_C
注册会员   /  发表于:2020-9-17 09:33:54
3#
lynn512 发表于 2020-9-16 12:16
您好,SJS没有直接 针对特定公式设置忽略公式 的API。
需要您通过代码逻辑去实现。
这里有个思路您可以参 ...

好的,非常感谢
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-9-17 09:40:51
4#
不客气,那就结帖啦。
有新问题也可以另开新帖。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部