我正在使用ExcelJs将excel转换为.csv。根据公式确定了许多列。
var workbook = new Excel.Workbook();
workbook.xlsx.load(results.rows[0].map) //reading from PostGres bytea field
.then(function () {
function getMap() {
return new Promise(resolve => {
workbook.csv
.writeFile(__dirname+ '/./uploads/'+results.rows[0].name+'.csv')
.then(function () {
resolve('done');
})
})
}
}
这样生成的.csv文件将忽略公式列。单元格只是空的。
当我将Microsoft Excel中的相同excel转换为.csv时,将遵循所有公式,并且该行包含由公式确定的实际值。
如何通过ExcelJS实现相同的行为?
答案 0 :(得分:0)
我终于想通了。 公式在MS Excel应用程序中转换为实数。 exceljs或任何其他npm都无法自动执行此操作。
也就是说,有一个解决方案。虽然麻烦。 您将不得不筛选所有公式,明确进行转换并将其写回到字段中。 https://gist.github.com/davidhq/0afed70985842cac6fc4e00f88a71bd2