找回密码
 立即注册

QQ登录

只需一步,快速开始

innerwang

高级会员

101

主题

408

帖子

1029

积分

高级会员

积分
1029
innerwang
高级会员   /  发表于:2024-12-16 11:21  /   查看:43  /  回复:5
1金币



场景需求为:使用 sheets.io 导出工作簿的内容(导出为 excel)用于其他功能,在导出前需要默认选中第一个 sheet 及每个 sheet 需要默认选中左上角第一个单元格,且不可以改变当前编辑态的选中状态。

有没有什么方式可以做到呢?

5 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:3 天前
沙发
您好,
可以在导出前创建一个spread副本,对副本spread做二次操作之后导出。这样原先的spread就不会受影响,无需恢复。

以下为示例代码:
  1. // 创建副本
  2. var newSpread = new GC.Spread.Sheets.Workbook();
  3. // option根据业务需要自行定义,如 是否包含数据源
  4. newSpread.fromJSON(spread.toJSON(option));
  5. // 对副本newSpread做二次操作,之后导出xlsx
  6. ......
  7. newSpread.export()
复制代码


回复 使用道具 举报
innerwang
高级会员   /  发表于:3 天前
板凳
Lynn.Dou 发表于 2024-12-16 16:51
您好,
可以在导出前创建一个spread副本,对副本spread做二次操作之后导出。这样原先的spread就不会受影响 ...

若内容较多时,比如包含图片,行列很多,这个时候 fromJSON 会存在比较耗时的问题吗
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:前天 11:14
地板
具体耗时需要您实际测试下,看是否在接受范围内。
还有一种思路,在导出前先记录当前的选中状态再修改,导出结束后恢复,具体您可以实际验证下。
回复 使用道具 举报
innerwang
高级会员   /  发表于:前天 15:00
5#
Lynn.Dou 发表于 2024-12-17 11:14
具体耗时需要您实际测试下,看是否在接受范围内。
还有一种思路,在导出前先记录当前的选中状态再修改, ...

了解了,谢谢
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:前天 16:23
6#
您客气了,那本帖就先结贴了,有问题欢迎另开新帖交流。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部