如何使用 exceljs 更改 Node.js 中的 msexcell 单元格格式
How to change msexcell cell format in Node.js by using exceljs
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
那么如何为特定单元格设置单元格样式?
它对我也有效,但你的代码不能按原样工作。 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');
使用 "getWorksheet('sheetName')" 而不是 "getWorksheet(sheetNo)",这对我来说很好。
- 关于造型:
这个应该可以正常工作:
row2.getCell(23).style = {font:{color: {argb: "004e47cc"}}}
因为,默认情况下,一行中的所有单元格都引用一个 style
对象,而 font
只是一个 getter 和 setter 到 .style.font
- 关于访问工作表:
Use "getWorksheet('sheetName')" instead of "getWorksheet(sheetNo)", This works fine for me.
所以,在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 :)
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
那么如何为特定单元格设置单元格样式?
它对我也有效,但你的代码不能按原样工作。 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');
使用 "getWorksheet('sheetName')" 而不是 "getWorksheet(sheetNo)",这对我来说很好。
- 关于造型:
这个应该可以正常工作:
row2.getCell(23).style = {font:{color: {argb: "004e47cc"}}}
因为,默认情况下,一行中的所有单元格都引用一个 style
对象,而 font
只是一个 getter 和 setter 到 .style.font
- 关于访问工作表:
Use "getWorksheet('sheetName')" instead of "getWorksheet(sheetNo)", This works fine for me.
所以,在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 :)