首页 - 法规 - 如何在前端应用中合并多个 Excel 工作簿

如何在前端应用中合并多个 Excel 工作簿

2023-09-05 16:14
-->

本文由葡萄城技术团队于博客园原创并首发。葡萄城为开发者提供专业的开发工具、解决方案和服务,赋能开发者。

前言|问题背景

  SpreadJS是纯前端的电子表格控件,可以轻松加载 Excel 工作簿中的数据并将它们呈现在前端浏览器应用的网页上。

  在某些情况下,您可能需要将来自多个工作簿的数据(例如,来自不同部门的月度销售报告)合并到一个工作簿中,实现此目的的一种方法是使用多个隐藏的 SpreadJS 实例来加载所有工作簿,然后将它们合并到一个电子表格中。

此文将向您展示如何合并多个 Excel 工作簿并将它们作为单个电子表格显示在您的前端浏览器应用中。

设置项目

要加载 SpreadJS,我们需要添加主要的 JavaScript 库和 CSS 文件。由于还要加载 Excel 文件,因此我们需要添加 ExcelIO JavaScript 库。这可以通过导航到 HTML 文件的位置并使用 NPM 安装 SpreadJS 文件来完成:

npm i @grapecity/spread-sheets @grapecity/spread-excelio

然后在 HTML 代码中引用这些文件:

Multiple Sheet Merging

紧接着我们将添加一个 DIV 元素来承载 SpreadJS 实例。

我们要添加一些代码来初始化 Spread 实例、ExcelIO 和一个数组来保存隐藏的 Spread 实例,我们将在合并之前使用它来加载所有 Excel 文件:

var hiddenWorkbooks, hiddenSpreadIndex, excelIO, spread; window.onload = function () { hiddenSpreadIndex = -1; hiddenWorkbooks = new Array(); excelIO = new www.gsm-guard.net(); spread = new GC.Spread.Sheets.Workbook(document.getElementById("ss")); }

在前端应用中加载 Excel 文件

对于这个页面,我们将添加代码让用户加载任意数量的工作簿,然后单击一个按钮将它们合并为一个并在 SpreadJS 中显示它们。为此,我们可以添加以下 HTML 代码: