我有一个 xlsm 文件,其中已有少量数据,需要在自动化过程中写入一些数据并创建一个新的 xlsm 文件。使用下面的代码,文件被创建,但它变得损坏并且无法打开。文件大小减少,例如从 8kb 到 7kb。不确定写入文件时遗漏了什么。
var Excel = require('exceljs');
var workbook = new Excel.Workbook();
workbook.xlsx.readFile('Book.xlsm')
.then(function () {
var worksheet = workbook.getWorksheet(1);
var row = worksheet.getRow(1);
console.log(row.getCell(1).value + " - First value"); // Get A1 value
row.getCell(3).value = "c"; //Set value to A3
row.commit();
return workbook.xlsx.writeFile('new.xlsm');
})
注意:刚刚创建了带有一些值列 a、b 和值 1,2 的 Book.xlsm。尝试使用“c”设置 A3 并另存为 new.xlsm
如果有其他没有这个问题的 npm 包也很好。