找回密码
 立即注册

QQ登录

只需一步,快速开始

Polariscbcbcbc

注册会员

26

主题

67

帖子

191

积分

注册会员

积分
191
Polariscbcbcbc
注册会员   /  发表于:2023-5-31 14:18  /   查看:1627  /  回复:1
1金币
通过点击定义按钮,在spread原有的excel追加用户选中的excel,代码操作如下:

1685513446870.png12356566.png
1685513617379.png470074462.png
// 追加工作簿
const addToWork = (file) => {
  // 读取excel文档
  let tmepSpread = new GC.Spread.Sheets.Workbook();
  // excelIo实例用于读取用户选择的excel文件
  let excelIo = new GC.Spread.Excel.IO();
  let sheetNames = [];
  spread.sheets.forEach((sheet) => {
    sheetNames.push(sheet.name());
  });
  excelIo.open(
    file.file,
    (json) => {
      // 创建一个工作薄后 把json数据加入到工作薄中 然后进行遍历
      tmepSpread.fromJSON(json);
      // 接着,遍历临时spread的所有sheet页,并添加到我们的现有spread
      tmepSpread.sheets.forEach((sheet, index) => {
        if (sheetNames.includes(sheet.name())) {
          sheet.name('newSheet_' + index);
        }
        spread.addSheet(spread.sheets.length, sheet);
      });
    },
    function (e) {
      message.error(e.errorMessage);
    },
  );
};

在用户导入之后,原本excel文件的样式消失不见了这是原有的样式,文字是居中显示的 NTGHI2`4W9C)[~A{8NFHR.png655457763.png 导入到spread中的样式 1685513880561.png855584716.png

最佳答案

查看完整内容

您好, 猜测是spread级别的命名样式没有带过来,需要额外处理下。 您参考下这篇文章中的教程: https://gcdn.grapecity.com.cn/showtopic-93624-1-1.html

1 个回复

倒序浏览
最佳答案
最佳答案
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2023-5-31 14:18:46
来自 2#
您好,
猜测是spread级别的命名样式没有带过来,需要额外处理下。
您参考下这篇文章中的教程:
https://gcdn.grapecity.com.cn/showtopic-93624-1-1.html
image.png543883361.png
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部