Nodejs技巧之Exceljs表格操作用法示例
程序员文章站
2022-03-18 16:57:17
本文实例讲述了nodejs技巧之exceljs表格操作用法。分享给大家供大家参考,具体如下:
工作中我们可能会遇到制作表格的需求,那么针对nodejs如何制作一个汇总表格呢?
今天...
本文实例讲述了nodejs技巧之exceljs表格操作用法。分享给大家供大家参考,具体如下:
工作中我们可能会遇到制作表格的需求,那么针对nodejs如何制作一个汇总表格呢?
今天我们就在此介绍下 的基本使用,应该可以满足我们大部分的需求。
第一部分 下载
npm install exceljs
第二部分 基本的配置
var excel = require("exceljs"); var workbook = new excel.workbook(); // 基本的创建信息 workbook.creator = "me"; workbook.lastmodifiedby = "her"; workbook.created = new date(1985, 8, 30); workbook.modified = new date(); workbook.lastprinted = new date(2016, 9, 27); // 视图大小, 打开excel时,整个框的位置,大小 workbook.views = [ { x: 0, y: 0, width: 1000, height: 2000, firstsheet: 0, activetab: 1, visibility: "visible" } ]; // 标签创建 var worksheet = workbook.addworksheet("第一个标签"); // 带颜色的 var worksheet2 = workbook.addworksheet("第二个标签", { properties: { tabcolor: { argb: "ffc0000" } } }); // 遍历标签 workbook.eachsheet((worksheet, sheetid) => { console.log("标签id:", sheetid) }) // console.log(worksheet); // 删除一个标签 workbook.removeworksheet(2) var firstsheet = workbook.getworksheet(1); console.log("标签信息-id", firstsheet.id); console.log("获取总的:行/实际行 /列/实际列 个数: ", firstsheet.rowcount, firstsheet.actualcolumncount, firstsheet.columncount, firstsheet.actualcolumncount); // 添加那个筛选箭头 worksheet.autofilter = 'a1:c1'; worksheet.getrow(5).font = { size: 14, bold: true }; worksheet.getcell("a2").value = "site"; worksheet.getcell("a2").font = { name: "arial black", color: { argb: "ff00ff00" }, family: 2, size: 14, italic: true, bold: true }; // save workbook to disk workbook.xlsx.writefile("first.xlsx").then(function() { console.log("saved"); });
第三部分 行列的操作
看代码看注释
var excel = require("exceljs"); var workbook = new excel.workbook(); // 标签创建 var worksheet = workbook.addworksheet("第一个标签"); // 带颜色的 var worksheet2 = workbook.addworksheet("第二个标签", { properties: { tabcolor: { argb: "ffc0000" } } }); // 设置列 worksheet.columns = [{ header: 'rating period', key: 'id', width: 38 }, { header: 'name', key: 'name', width: 32, }, { header: 'd.o.b.', key: 'dob', width: 10, style: { numfmt: 'dd/mm/yyyy' } } ]; /// 根据id添加值 worksheet.addrow({ id: 1, name: 'john doe', dob: new date(1970, 1, 1) }); worksheet.addrow({ id: 2, name: 'jane doe', dob: new date(1965, 1, 7) }); worksheet.getcell(1).value = "z"; // 直接赋值 worksheet.getcell('a6').value = "1989"; // 合并单元格 worksheet.mergecells('a4:a7'); // 合并四个格子 worksheet.mergecells('a10', 'b11'); // ===== 格式化显示, // 数字 1.6 显示 '1 3/5' worksheet.getcell('a1').value = 1.6; worksheet.getcell('a1').numfmt = '# ?/?'; // 显示 1.60% worksheet.getcell('b1').value = 0.016; worksheet.getcell('b1').numfmt = '0.00%'; // ===== 字体显示 worksheet.getcell('a3').font = { // 字体名 name: 'comic sans ms', // font family for fallback. an integer value. family: 4, // 字体大小 size: 16, // 下划线 underline: true, // 加粗 bold: true, }; worksheet.getcell('a3').value = "测试字体" // ==== 对齐方式 worksheet.getcell('a1').alignment = { vertical: 'top', horizontal: 'left' }; worksheet.getcell('b1').alignment = { vertical: 'middle', horizontal: 'center' }; worksheet.getcell('c1').alignment = { vertical: 'bottom', horizontal: 'right' }; // ===== 边框 worksheet.getcell('a1').border = { top: { style: 'double', color: { argb: 'ff00ff00' } }, left: { style: 'double' }, bottom: { style: 'thin' }, right: { style: 'thin' } }; // ==== 填充颜色 worksheet.getcell('a1').fill = { // 模式 type: 'pattern', // 填充 pattern: 'solid', // fgcolor: { // argb: 'ffff0000' // }, // 背景色 bgcolor: { argb: 'ff0000ff' } }; // 图片相关操作直接看github就好 // 直接创建一个excel表 workbook.xlsx.writefile("second.xlsx").then(function () { console.log("saved"); });
希望本文所述对大家node.js程序设计有所帮助。
上一篇: 判断一个数是否为素数(质数)
下一篇: swoole的TCP服务