我目前正在使用NodeJS生成XLSX电子表格。我使用xlsx-populate模块在Express服务器上创建单个工作表的XLSX文件。
我想知道是否有人知道如何使用Node将多个XLSX文件合并为一个文件,其中包含多个工作表。
谢谢!
示例:
const xlsx = require('xlsx-populate');
xlsx.fromFileAsync('template1.xlsx')
.then((workbook) => {
// populate the workbook with stuff
return workbook.toFileAsync('spreadsheet1.xlsx');
})
.then(() => xlsx.fromFileAsync('template2.xlsx'))
.then((workbook) => {
// populate the other workbook with stuff
return workbook.toFileAsync('spreadsheet2.xlsx');
});
这个Promise链保存了两个不同的XLSX文件(spreadsheet1.xlsx,spreadsheet2.xlsx),每个文件都是从相应的模板文件构建而成。xlsx-populate不允许你在同一个工作簿中从不同的XLSX文件创建多个表格,所以我想知道是否可能将这两个工作簿合并成一个带有多个表格的文件?
编辑:
最终我换了一个更加灵活但也更加复杂的excel4node模块。我的问题是我有两个包含图片的模板文件,我想用xlsx-populate将它们合并成一个文件。
由于我没有找到一种成功的方法来使用xlsx-populate将这两个模板合并到一个文件中,所以我使用excel4node从头开始重建模板文件,并插入图片(xlsx-populate不支持)。