node.js - ExcelJS CSV 转换无法遵守公式
问题描述
我正在使用 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 实现相同的行为?
解决方案
我终于想通了。公式在 MS Excel 应用程序中转换为实际数据。exceljs 或任何其他 npm 都无法自动执行此操作。
也就是说,有一个解决方案。虽然很麻烦。您必须筛选所有公式,明确进行转换并将其写回字段。 https://gist.github.com/davidhq/0afed70985842cac6fc4e00f88a71bd2
推荐阅读
- ofbiz - Ofbiz16.11 使用GUI的作业调度
- excel - excel的旋转按钮
- c# - NullReferenceException:对象引用未设置为对象的实例_
- python - 如何在python中打开csv?
- tensorflow - Keras - K.print 在损失函数中不起作用
- mysql - 更新 MariaDB 后如何停止 XAMPP 的 MySQL 服务
- node.js - How do i get nested schema keys from mongoose main model?
- scala - Heroku 的 Akka 应用程序出现错误:Web 进程无法绑定到 $PORT
- javascript - OT 未定义?
- wordpress - login_message 不显示 WordPress 5.1.1