ExcelJS JavaScript (Node.js) 完整指南:安装、方法与实战示例

面向初学者的在线Python训练器

轻松学习Python,无需理论负担。在浏览器中直接解决带自动检查的实践任务,无需安装任何东西。

开始课程

ExcelJS for JavaScript (Node.js):创建与解析 Excel 文件的完整指南

1. 什么是 ExcelJS?为什么需要它?

ExcelJS 是一个功能强大且灵活的 JavaScript 库,专门用于处理 Excel 格式的电子表格(XLSX、XLSM、CSV 等)。它既可以在 Node.js 环境中运行,也可以在浏览器中使用(通过 Webpack 或 Browserify 等模块打包工具)。ExcelJS 让开发者能够以编程方式创建、读取、修改和解析 Excel 文件,而无需安装 Microsoft Excel 应用程序。

为什么需要 ExcelJS?在现代 Web 开发和业务流程自动化中,Excel 仍然是数据交换最流行的格式之一。报表、数据库导出、财务文档、价格表、统计数据——这些经常需要导出为 Excel 文件。ExcelJS 库提供了完整的工具集来解决这些任务:从创建简单的数据表格,到包含合并单元格、样式、公式、图表和条件格式的复杂报表。此外,它还能解析(读取)现有的 Excel 文件,从而实现从表格中自动导入数据。

ExcelJS 相比同类库(例如 SheetJS 的 xlsx)的核心优势:

  • 样式支持:颜色、字体、边框、对齐、填充。
  • 公式处理:读取和写入公式。
  • 条件格式:根据单元格值改变外观。
  • 图表:创建图形和图表。
  • 图片:在工作表中插入图片。
  • 流式处理:处理大文件时无需将整个文件加载到内存。
  • 活跃维护:库定期更新,拥有庞大的社区支持。

2. 安装 ExcelJS

在 Node.js 项目中安装 ExcelJS,只需使用 npm 包管理器。在项目根目录打开终端,执行以下命令:

npm install exceljs

安装完成后,您可以在代码中导入该库:

const ExcelJS = require('exceljs');

如果您使用 ES 模块(现代 import/export 语法),请确保 package.json 中设置了 "type": "module",或使用 .mjs 文件扩展名:

import ExcelJS from 'exceljs';

3. 快速上手——最小工作示例

让我们创建一个简单的 Excel 文件,包含一个表格并保存到磁盘。这个示例展示了基本步骤:创建工作簿、添加工作表、写入数据并保存。

const ExcelJS = require('exceljs');

async function createSimpleExcel() {
    // 1. 创建一个新的工作簿
    const workbook = new ExcelJS.Workbook();
    
    // 2. 添加一个名为"我的数据"的工作表
    const worksheet = workbook.addWorksheet('我的数据');
    
    // 3. 定义列(表头)
    worksheet.columns = [
        { header: 'ID', key: 'id', width: 10 },
        { header: '姓名', key: 'name', width: 30 },
        { header: '年龄', key: 'age', width: 10 },
        { header: '城市', key: 'city', width: 20 }
    ];
    
    // 4. 添加数据行
    worksheet.addRow({ id: 1, name: '张三', age: 28, city: '北京' });
    worksheet.addRow({ id: 2, name: '李四', age: 35, city: '上海' });
    worksheet.addRow({ id: 3, name: '王五', age: 22, city: '深圳' });
    
    // 5. 将工作簿保存到文件
    await workbook.xlsx.writeFile('output.xlsx');
    console.log('文件 output.xlsx 已成功创建!');                    

推荐