请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

高阳0910

中级会员

43

主题

155

帖子

528

积分

中级会员

积分
528
高阳0910
中级会员   /  发表于:2025-7-4 14:13  /   查看:83  /  回复:3
1金币
就是在浏览器上创建新的工作表的时候 。
某几个统计的单元格的数据,需要从之前保存过的工作表里拿。
之前保存的工作表 。都以xlsx的格式存到了服务器的某个位置上或者 也可能是存在了oss 上 。
这样的话 应该怎么建立引用呢?

最佳答案

查看完整内容

您好,SpreadJS支持跨工作簿引用,引用的方式可以参考链接:跨工作簿引用 但是该功能无法直接引用线上的文件,而是需要先将文件拉取至前端,并为其单独创建一个workbook对象。示例代码如下:

3 个回复

倒序浏览
最佳答案
最佳答案
Matthew.Xue
超级版主   /  发表于:2025-7-4 14:13:41
来自 2#
本帖最后由 Matthew.Xue 于 2025-7-4 16:43 编辑

您好,SpreadJS支持跨工作簿引用,引用的方式可以参考链接:跨工作簿引用
但是该功能无法直接引用线上的文件,而是需要先将文件拉取至前端,并为其单独创建一个workbook对象。示例代码如下:
  1. // 假设spread是网页中展示的workbook对象,而ref.xlsx是你要引用的工作簿文件
  2. fetch("ref.xlsx").then(res => {
  3.     return res.blob()
  4. }).then(blob => {
  5.     // 拉取到文件后,创建引用的workbook对象,这里无需传入dom的id,因为你不需要将其展示出来
  6.     let refSpread = new GC.Spread.Sheets.Workbook()
  7.     refSpread.import(blob, function() {
  8.         // 定义引用,第一个参数为引用的命名,可以为任意值,不必和真实的文件名相同
  9.         spread.updateExternalReference("ref.xlsx", refSpread.toJSON())
  10.         // ref.xlsx就是上面updateExternalReference的第一个参数
  11.         spread.getActiveSheet().setFormula(0,0,"='[ref.xlsx]Sheet1'!A1")
  12.     })
  13. })
复制代码


回复 使用道具 举报
高阳0910
中级会员   /  发表于:2025-7-4 16:47:30
3#
本帖最后由 高阳0910 于 2025-7-4 16:55 编辑
Matthew.Xue 发表于 2025-7-4 16:40
您好,SpreadJS支持跨工作簿引用,引用的方式可以参考链接:跨工作簿引用
但是该功能无法直接引用线上的文 ...

好滴 明白。
如果是引用多个excel 的内容 就 写多个这样的呗。
spread.updateExternalReference("ref.xlsx", refSpread.toJSON())

回复 使用道具 举报
Matthew.Xue
超级版主   /  发表于:2025-7-4 16:55:05
4#
好的,那这边就先结贴了,有其他问题欢迎发新帖
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部