2017-04-07 50 views
1

我正在使用exceljs並嘗試在單元格中寫入值,但它不起作用。但workbook.xlsx.readFile(filename)正在工作,但workbook.xlsx.writeFile(filename)不會。寫文件不在exceljs中

這裏是我的代碼: -

var Excel = require('exceljs'); 
var fs = require('fs') 
module.exports.summary = function(req, res, next) { 
try { 
    var filename = process.cwd() + '/template/report/summary.xlsx'; 
    var workbook = new Excel.Workbook(); 
    workbook.xlsx.writeFile(filename) 
     .then(function() { 
      var worksheet = workbook.getWorksheet(1); 
      console.log('worksheet',worksheet); 
      var row = worksheet.getRow(5); 
      row.getCell('C').value = new Date(); 
      row.commit(); 
      worksheet.commit(); 

      workbook.commit().then(function() { 
       console.log('xls file is written.'); 
      }); 
      res.json({ msg: done }) 
     }); 

} catch (e) { 
    next(e); 
} 
} 
+0

發生了錯誤? – abdulbarik

回答

1

試試這個代碼,希望這將幫助你

//Creating New Workbook 
var workbook = new excel.Workbook(); 

//Creating Sheet for that particular WorkBook 
var sheetName = 'Sheet1'; 
var sheet = workbook.addWorksheet(sheetName); 

//Header must be in below format 
sheet.columns = [{key:"name", header:"name}, {key: "age", header: "age"}]; 

//Data must be look like below, key of data must be match to header. 
var data = [{name:"Kalai", age: 24}, {name:"Vignesh", age:24}]; 

//adding each in sheet 
for(i in data){ 
    sheet.addRow(data[i]); 
} 

//Finally creating XLSX file 
var fileName = "Sample.xlsx"; 
workbook.xlsx.writeFile(fileName).then(function() { 
       callback(null); 
      }); 
+0

它不適合我。 – Raz