【问题标题】:How to change msexcell cell format in Node.js by using exceljs如何使用 exceljs 在 Node.js 中更改 msexcell 单元格格式
【发布时间】:2018-09-21 19:39:33
【问题描述】:
const Excel = require('exceljs');
let workbook = new Excel.Workbook();
let workSheet = workbook.getWorksheet(1);
workSheet.getCell('W2').font = {color: {argb: "004e47cc"}};

此代码设置整行的字体颜色,而不仅仅是 W2 单元格。如果我这样做也会发生同样的情况:

let row2 = workSheet.getRow(2);
row2.getCell(23).font = {color: {argb: "004e47cc"}}; //W2

那么我该如何为某个单元格设置单元格样式呢?

【问题讨论】:

  • 对我来说很好...尝试更新模块

标签: node.js exceljs


【解决方案1】:

它也对我有用,但是您的代码不能按原样工作。 workbook.getWorksheet(1) 失败,因为您尚未在您创建的新工作簿中创建任何工作表。

此代码生成一个有效的 .xlsx 文件,其中单元格 W2 具有您想要的颜色:

const Excel = require('exceljs');
const workbook = new Excel.Workbook();
const workSheet = workbook.addWorksheet('Sheet');
workSheet.getCell('W2').font = {color: {argb: "004e47cc"}};
workbook.xlsx.writeFile('foo.xlsx');

【讨论】:

    【解决方案2】:

    使用“getWorksheet('sheetName')”而不是“getWorksheet(sheetNo)”,这对我来说很好。

    【讨论】:

      【解决方案3】:
      1. 关于样式:

      这个应该可以正常工作:

      row2.getCell(23).style = {font:{color: {argb: "004e47cc"}}}

      因为默认情况下,一行中的所有单元格都引用一个style 对象,而font 只是.style.font 的getter 和setter

      1. 关于访问工作表:

      使用“getWorksheet('sheetName')”而不是“getWorksheet(sheetNo)”,这对我来说很好。

      所以,在exceljs中我们提供了两种获取工作表的方式:

      // FIRST:
      // wb.getWorksheet(ws:string|number):Worksheet
      wb.getWorksheet('sheetName')
      wb.getWorksheet(sheetId) 
      // NOTE: sheetId is number written into worksheet,
      // it's not a index in array - just a number from Excel. 
      // So for some files you read sheetId may be for instance: 10, 9, 999
      // I recommend to avoid using  ws.getWorksheet(NUMBER).
      
      // SECOND:
      // wb.worksheets: Array<Worksheet>
      wb.worksheets[1];
      wb.worksheets[2];
      wb.worksheets[wb.worksheets.lenght-1];
      // I am big fan of using this way :)
      

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-03
      • 1970-01-01
      相关资源
      最近更新 更多