这是我的代码。它会创建一个xlsx文件,该文件在libreoffice中打开,但在excel-2007中显示为损坏
还要workbook.xlsx.write(response)下载.zip文件
请帮助。
var Excel = require("exceljs");
var express = require("express");
var bodyParser = require("body-parser");
var app = express();
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
app.all("/getExcel", function(req, res) {
var workbook = new Excel.Workbook();
var worksheet = workbook.addWorksheet("Discography");
worksheet.columns = [{ header: "Album", key: "album" }, { header: "Year", key: "year" }];
worksheet.addRow({ album: "Taylor Swift", year: 2006 });
worksheet.addRow(["Fearless", 2008]);
var rows = [["Speak Now", 2010], { album: "Red", year: 2012 }];
worksheet.addRows(rows);
worksheet.getCell("A6").value = "1989";
worksheet.getCell("B6").value = 2014;
workbook.xlsx.writeFile('taylor_swift.xlsx').then(fenter code hereunction() {
console.log("saved");
});
});
答案 0 :(得分:0)
尝试在MSO中创建模板文件,然后使用exceljs打开它。对于我来说,这种技巧通常效果很好。
答案 1 :(得分:0)
我也有像你这样的问题。 使用模板XLSX文件->使用exceljs nodejs填充内容->使用libreOffice转换为PDF文件。 但无法显示所有工作表。
exceljs:添加新工作表,然后默认为{状态:“隐藏”}
我找到了原因:
var sheet2 = workbook.addWorksheet('S2',{state: 'visible'});