javascript - 如何在node js xlsx npm中填充行的背景颜色

标签 javascript node.js npm xlsx

我需要读取 Excel 工作表,在检查后端数据后需要对行进行着色。我能够读取并使用新数据创建新工作表,但填充在此处不适用于单元格/行。

这是我的代码,我正在使用 xlsx npm

  let cell = workingSheet['C'+i];
  console.log(cell)
  workingSheet['A'+i].v = "PROCESSED"+i;
  workingSheet['A'+i].s = { fill: { fgColor: { rgb: "#111111" } } };
  console.log(
    workingSheet['A'+i]
  )
  xlsx.writeFile(spreadsheet, `./sheets/output/mysheet.xls`);

最佳答案

此示例演示如何为单元格背景着色。问题是,没有图案类型:“solid”,并且颜色代码不需要开头#。 这不适用于 xlsx 包,但适用于 xlsx-color

"use strict";
var xlsx = require("xlsx-color");
var spreadsheet = xlsx.utils.book_new();
var xf = "./sheets/output/mysheet.xls";

var sheets = {
  "Munkafüzet1": [
    ["M1A1", "M1B1", "M1C1", "M1D1"],
    ["M1A2", "M1B2", "M1C2", "M1D2"],
    ["M1A2", "M1B2", "M1C2", "M1D2"],
    ["M1A2", "M1B2", "M1C2", "M1D2"],
    ["M1A2", "M1B2", "M1C2", "M1D2"],
  ]
};

for (var sheet of Object.keys(sheets)) {
  xlsx.utils.book_append_sheet(
    spreadsheet,
    xlsx.utils.aoa_to_sheet(sheets[sheet]),
    sheet
  );
}

var i;
for (i = 1; i <= sheets["Munkafüzet1"].length; i++) {
spreadsheet.Sheets["Munkafüzet1"]["A"+i].s = {
  fill: {
    patternType: "solid",
    fgColor: { rgb: "111111" }
  }
  };
}

xlsx.writeFile(spreadsheet, xf);

关于javascript - 如何在node js xlsx npm中填充行的背景颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63920562/

相关文章:

javascript - 如何仅使用 DOM 对象获取 leaflet.js 实例?

javascript regex - 添加结束 img 标签

javascript - Javascript : Array. 长度表达式计算为 boolean 值

node.js - 如何在nodejs模型中获取用户ip?并在我的表格列 ip_address 中更新

mysql - Node JS等待一系列mysql查询

node.js - 将jade模板共享给其他模块的正确方法是什么

javascript - 如何获取网页加载时间

javascript - Nodejs 和 express 无法定位资源文件(CSS & JS 文件)

node.js - 如何等待请求响应并返回值?

javascript - 如何设置我的目录以使用 eyeglass 获取 modularscale