前端ExcelJS设置某一列的数字格式

文章介绍了如何在前端使用ExcelJS库导出表格时,对特定列进行数字格式(如货币)和时间格式的设定,例如设置第二列为货币格式($0.00)和第三列时间格式(yyyy/m/dh:mm)。此外,还展示了如何利用getColumn和getRow方法读取和遍历单元格内容。
摘要由CSDN通过智能技术生成

应用场景:

当前端要导出表格时需要设置时间或者重量以及金钱的数字格式,可以运用worksheet.getColumn('需要进行格式转换的列数').numFmt来进行数字的格式转换,具体的格式也可以参考下图中的单元格格式中的数字格式。

 下面是代码实现:

// 引入ExcelJS
const ExcelJS = require('exceljs');

// 创建工作簿
const workbook = new ExcelJS.Workbook();

// 添加工作表
const worksheet = workbook.addWorksheet('My Sheet');

// 设置表头
worksheet.columns = [
    { header: "编号", key: "sort", width: 10 },
    { header: "费用", key: "class", width: 20 },
    { header: "时间", key: "name", width: 20 },
    { header: "得分", key: "score", width: 10 },
];

// 添加数据
worksheet.addRow({ sort: 1, num: 123.2, time: "2023/6/5 6:20:08", score: 44 });
worksheet.addRow({ sort: 2, num: 120.3, time: "2023/6/5 6:20:08", score: 86 });
worksheet.addRow({ sort: 3, num: 27.33, time: "2023/6/5 6:20:08", score: 58 });

// 设置第二列为货币格式
worksheet.getColumn(2).numFmt = '$0.00';


// 设置第三列的时间格式为yyyy/m/d h:mm
worksheet.getColumn(3).numFmt = 'yyyy/m/d h:mm';

// 将工作簿保存到文件
workbook.xlsx.writeFile("example.xlsx")
  .then(function() {
    console.log("文件已保存。");
  });

拓展:

我们也可以利用 getColumn 来读取列信息,使用exchCell进行遍历单元格列:

worksheet.getColumn("score").eachCell((cell, rowIdx) => {
    console.log(cell.value, rowIdx);
    // 得分, 1
    // 99, 2
    // 86, 3
});

我们也可以利用 getRow 来读取列信息,使用exchCell进行遍历单元格行:

worksheet.getRow(1).eachCell((cell, rowIdx) => {
    console.log(cell.value, rowIdx);
    // 编号, 1
    // 费用, 2
    // 时间, 3
    // 得分, 4
});

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

海豹先生_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值