您可以在雲端以編程方式輕鬆地將兩個或多個 Excel 文件組合成一個文件。您可能需要根據多個文件中的可用數據生成報告,以便您可以將它們合併到 Node.js 應用程序中的單個文件中。在本文中,您將了解如何使用 Node.js 中的 REST API 將多個 Excel 文件合併為一個文件。
本文應涵蓋以下主題:
文件合併 REST API 和 Node.js SDK
為了合併多個 XLSX 文件,我將使用 GroupDocs.Merger Cloud 的 Node.js SDK API。它允許您從支持的文檔格式(如 Word、Excel、PowerPoint, Visio 繪圖、PDF 和 HTML)中組合、拆分、刪除和重新排列單個頁面或頁面集合。
您可以在控制台中使用以下命令將 GroupDocs.Merger Cloud 安裝到您的 Node.js 應用程序:
npm install groupdocs-merger-cloud
在執行上述步驟之前,請從 dashboard 獲取您的 Client ID 和 Secret。獲得 ID 和密碼後,添加如下所示的代碼:
global.clientId = "112f0f38-9dae-42d5-b4fc-cc84ae644972";
global.clientSecret = "16ad3fe0bdc39c910f57d2fd48a5d618";
global.myStorage = "";
const configuration = new groupdocs_merger_cloud.Configuration(clientId, clientSecret);
configuration.apiBaseUrl = "https://api.groupdocs.cloud";
在 Node.js 中使用 REST API 合併多個 Excel 文件
您可以按照下面提到的簡單步驟,以編程方式在雲上組合兩個或多個 Excel 文件:
上傳 Excel 文件
首先,使用下面給出的代碼示例將 Excel 文件上傳到雲端:
// 構建FileApi
let fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
let resourcesFolder = 'C:\\Files\\';
fs.readdir(resourcesFolder, (err, files) => {
files.forEach(file => {
// 一個一個地讀取文件
fs.readFile(resourcesFolder + file, (err, fileStream) => {
// 創建上傳文件請求
let request = new groupdocs_merger_cloud.UploadFileRequest(file, fileStream, myStorage);
// 上傳文件
fileApi.uploadFile(request)
.then(function (response) {
console.log(file + " uploaded: " + response.uploaded.length);
})
.catch(function (error) {
console.log("Error: " + error.message);
});
});
});
});
因此,上傳的 XLSX 文件將在雲端儀表板的 文件部分 中可用。
使用 Node.js 合併多個 Excel 文件
您可以按照下面提到的步驟以編程方式輕鬆地將多個 Excel 文件合併到一個文件中:
- 創建 DocumentApi 的實例
- 創建第一個 JoinItem
- 為 FileInfo 中的第一個 JoinItem 提供輸入文件路徑
- 創建第二個 JoinItem
- 為 FileInfo 中的第二個 JoinItem 提供輸入文件路徑
- 創建加入選項
- 添加逗號分隔的已創建連接項列表
- 設置輸出文件路徑
- 使用 JoinOptions 創建 JoinRequest
- 通過調用 DocumentAPI 的 join() 方法獲取結果
以下代碼片段顯示瞭如何在 Node.js 中使用 REST API 合併多個 Excel 文件。
// 接口初始化
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);
// 創建第一個連接項
let item1 = new groupdocs_merger_cloud.JoinItem();
item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
item1.fileInfo.filePath = "sample1.xlsx";
// 創建第二個連接項
let item2 = new groupdocs_merger_cloud.JoinItem();
item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
item2.fileInfo.filePath = "sample2.xlsx";
// 創建連接選項
let options = new groupdocs_merger_cloud.JoinOptions();
options.joinItems = [item1, item2];
options.outputPath = "Output/joined.xlsx";
// 創建加入請求
let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
let result = await documentApi.join(joinRequest);
console.log("Document edited: " + result.path);
下載合併文件
上面的代碼示例將合併後的 Excel 文件保存在雲端。您可以使用以下代碼示例下載它:
// 初始化接口
var fileApi = groupdocs_merger_cloud.FileApi.fromConfig(configuration);
// 創建文件下載請求
let request = new groupdocs_merger_cloud.DownloadFileRequest("Output/joined.xlsx", myStorage);
// 下載文件
let response = await fileApi.downloadFile(request);
// 將輸出文件保存在您的工作目錄中
fs.writeFile("C:\\Files\\joined.xlsx", response, "binary", function (err) { });
console.log(response);
使用 Node.js 合併特定的 Excel 工作表
您可以按照以下步驟以編程方式輕鬆地將多個 Excel 文件的特定 Excel 工作表合併到一個文件中:
- 創建 DocumentApi 的實例
- 創建第一個 JoinItem
- 為 FileInfo 中的第一個 JoinItem 提供輸入文件路徑
- 創建第二個 JoinItem
- 為 FileInfo 中的第二個 JoinItem 提供輸入文件路徑
- 創建加入選項
- 定義開始圖紙編號和結束圖紙編號
- 設置輸出文件路徑
- 使用 JoinOptions 創建 JoinRequest
- 通過調用 DocumentAPI 的 join() 方法獲取結果
以下代碼片段顯示瞭如何使用 Node.js 中的 REST API 合併來自多個文件的特定 Excel 工作表。
// 接口初始化
let documentApi = groupdocs_merger_cloud.DocumentApi.fromKeys(clientId, clientSecret);
// 創建第一個連接項
let item1 = new groupdocs_merger_cloud.JoinItem();
item1.fileInfo = new groupdocs_merger_cloud.FileInfo();
item1.fileInfo.filePath = "sample1.xlsx";
// 創建第二個連接項
let item2 = new groupdocs_merger_cloud.JoinItem();
item2.fileInfo = new groupdocs_merger_cloud.FileInfo();
item2.fileInfo.filePath = "sample2.xlsx";
item2.startPageNumber = 3
item2.endPageNumber = 4
// 創建連接選項
let options = new groupdocs_merger_cloud.JoinOptions();
options.joinItems = [item1, item2];
options.outputPath = "Output/joined.xlsx";
// 創建加入請求
let joinRequest = new groupdocs_merger_cloud.JoinRequest(options);
let result = await documentApi.join(joinRequest);
console.log("Document edited: " + result.path);
在線試用
請試用以下免費的在線 XLSX 合併工具,它是使用上述 API 開發的。 https://products.groupdocs.app/merger/xlsx
結論
在本文中,您了解瞭如何在雲端合併多個 Excel 文件。您還學習瞭如何使用 Node.js 中的 REST API 將特定的 Excel 工作表合併到一個文件中。此外,您還學習瞭如何以編程方式將 XLSX 文件上傳到雲端,然後從雲端下載合併後的文件。 API 還使您能夠重新排序或替換文檔頁面、更改頁面方向、管理文檔密碼以及對任何支持的文件格式輕鬆執行其他操作。它還提供 .NET、Java、PHP、Ruby、Android 和 Python SDK 作為 Cloud API 的文檔合併系列成員。您可以使用 文檔 了解有關 GroupDocs.Merge Cloud API 的更多信息。我們還提供了一個 API 參考 部分,讓您可以直接通過瀏覽器可視化我們的 API 並與之交互。如有任何歧義,請隨時在論壇上與我們聯繫。