找回密码
 立即注册

QQ登录

只需一步,快速开始

[已处理] EXCEL导出问题

Fiooona
论坛元老   /  发表于:2019-8-29 11:29:48
11#
经调研发现,在sheet上添加自定义名称,导出后会丢失内容,spread上可以正常导出不丢失,建议您暂时用spread上添加自定义名称,sheet上无法导出的原因我们还在排查中
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
彭泽
注册会员   /  发表于:2019-8-30 08:15:12
12#
Fiooona 发表于 2019-8-29 11:29
经调研发现,在sheet上添加自定义名称,导出后会丢失内容,spread上可以正常导出不丢失,建议您暂时用sprea ...

你们这个方案还是有点问题,这样只是在部分情况下正常,例如formul=A1这一类的数据,导出还是有问题。
回复 使用道具 举报
Fiooona
论坛元老   /  发表于:2019-8-30 09:29:37
13#
本帖最后由 Fiooona 于 2019-8-30 09:36 编辑

建议您新建命名时在Excel中试一下,如果是Excel中没有报错的名字在SpreadJS导出后报错,可以把具体的设置方法发来,我们再具体看是哪用的用法出错或者是产品的bug:
image.png408531798.png 在Excel中,定义自定义名称需要工作表名称,否则,它会抛出异常,对于SpreadJS,它没有此限制。
所以如果要导出Excel需要把下方的写法:
sheet.addCustomName("customName1", "=$B$3", 0, 0, "this is a customName!");
改写成:
sheet.addCustomName("customName1", "=Sheet1!$B$3", 0, 0, "this is a customName!");
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
彭泽
注册会员   /  发表于:2019-8-31 10:33:42
14#
Fiooona 发表于 2019-8-30 09:29
建议您新建命名时在Excel中试一下,如果是Excel中没有报错的名字在SpreadJS导出后报错,可以把具体的设置方 ...

因为addCustomName的CustomName不能带有特殊字符,如果导出带有特殊字符就会有问题,麻烦有解决方案请尽快告知。
回复 使用道具 举报
Fiooona
论坛元老   /  发表于:2019-9-2 09:39:22
15#
您好,这个没有办法解决,在Excel中自定义名称中如果有:
1开头为字母或下划线,
2不包括空格或不允许的字符
3不与工作簿中的现有名称冲突
如果出现上面不符合Excel规范的命名在Excel中就会报错,
在SpreadJS中可以正常识别,但是当导出为Excel时不符合Excel的规范,Excel就会删除这个命名。所以这个问题超出SpreadJS本身可以处理的范围。

或者您可以考虑用特定的一串字符串代替那个特殊字符,在导入导出Excel的时候正则匹配替换掉那个不符合规范的字符。
image.png602525634.png
组件化表格编辑器(预览版)试用进行中,点击了解详情!
请点击评分,对我的服务做出评价!5分为非常满意!
回复 使用道具 举报
12
您需要登录后才可以回帖 登录 | 立即注册
返回顶部