使用xlsx-populate库将2个xlsx文件合并为1个xlsx文件

时间:2019-12-22 05:35:24

标签: javascript xlsx-populate

am当前正在使用NodeJS生成XLSX电子表格。我正在使用模块xlsx-populate在Express服务器上创建单页XLSX文件。

我想知道是否有人知道一种使用Node将多个XLSX文件合并为一个包含多个工作表的文件的方法。

我从stackoverflow获得了此解决方案,但是它给出了错误错误:名称为“ Sheet1”的工作表已经存在。我不知道如何进行操作,有人可以建议我如何解决此问题

ipython

1 个答案:

答案 0 :(得分:0)

如果某人面临相同的问题,而不是只更改几行,它将正常工作。

const XlsxPopulate = require('xlsx-populate');

 Promise.all([
    XlsxPopulate.fromFileAsync('./initReport.xlsx'),
    XlsxPopulate.fromFileAsync('./dec22.xlsx')
 ])
  .then(workbooks => {
    const workbook = workbooks[0];
    const workbook2 = workbooks[1];
    const sheets = workbook2.sheets();

    sheets.forEach(sheet => {
      const newSheet = workbook.addSheet('sheet2',1 );
      const usedRange = sheet.usedRange();
      const oldValues = usedRange.value();

      newSheet.range(usedRange.address()).value(oldValues);
    });

    return workbook.toFileAsync('./combine.xlsx');
 });