我有一个包含少量数据的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 文件。尝试将 A3 设置为 'c' 并保存为新的 new.xlsm。
如果还有其他没有这个问题的 npm 包也是很好的选择。