Excel 是最常用的數據分析、報告和財務管理應用程序之一。通常,您需要比較兩個或更多 Excel 工作簿以識別更改、驗證更新或跟踪修訂。手動執行這個過程可能會耗時且容易出錯。幸運的是,使用適用於 GroupDocs.Comparison for .NET Cloud SDK,您可以使用 C# 程式化地比較 Excel 工作簿,並生成一個突出顯示所有差異的新文件。

在本教程中,您將學習如何:

如何設置 Excel 比較 API

為了比較 Excel XLSX files,我們將使用 GroupDocs.Comparison Cloud SDK for .NEt。它允許您比較電子表格、跟蹤變更,並將結果保存在一個 Excel 工作簿中。

透過 NuGet 安裝 SDK:

Install-Package GroupDocs.Comparison-Cloud

在運行以下代碼片段之前,請從 cloud dashboard 獲取您的客戶端 ID 和客戶端密鑰。

比較兩個 Excel 檔案使用 C#

您可以通過以下步驟在 C# 中比較兩個 Excel 文件:

  1. 上傳源和目標 Excel 工作簿。
  2. 使用 GroupDocs.Comparison API 進行比較。
  3. 下載帶有突出顯示變更的結果文件。

上傳 Excel 工作簿

為了執行比較操作,首先,我們需要使用以下代碼範本將源和目標 XLSX 文件上傳到雲端存儲:

var fileApi = new FileApi(configuration);

using (var source = File.OpenRead("source.xlsx"))
{
    fileApi.UploadFile(new UploadFileRequest("source.xlsx", source));
}

using (var target = File.OpenRead("target.xlsx"))
{
    fileApi.UploadFile(new UploadFileRequest("target.xlsx", target));
}

比較 Excel 工作簿

現在使用以下程式碼片段比較兩個 Excel 工作簿。執行後,API 將生成一個新的 Excel 工作簿,包含兩個電子表格之間的突出顯示變更。

var options = new ComparisonOptions
{
    SourceFile = new FileInfo { FilePath = "source.xlsx" },
    TargetFiles = new List<FileInfo> { new FileInfo { FilePath = "target.xlsx" } },
    OutputPath = "result/comparison-result.xlsx"
};

var request = new ComparisonsRequest(options);
var response = compareApi.Comparisons(request);

在 C# 中比較多個 Excel 工作簿

該 REST API 還提供了比較多個 Excel 工作簿的功能。請按照以下指定的步驟操作。

  • 首先,創建一個 CompareApi 的實例。
  • 其次,將輸入的 Excel 工作簿上傳至雲端儲存。
  • 現在,初始化 ComparisonOptions 物件,我們在此定義輸入和結果 Excel 工作簿。
  • 然後,創建一個 ComparisonsRequest 的物件,我們將 ComparisonOptions 物件作為參數傳遞。
  • 最後,使用 Comparisons() API 介面比較 Excel 工作簿。
var options = new ComparisonOptions
{
    SourceFile = new FileInfo { FilePath = "source.xlsx" },
    TargetFiles = new List<FileInfo>
    {
        new FileInfo { FilePath = "target1.xlsx" },
        new FileInfo { FilePath = "target2.xlsx" }
    },
    OutputPath = "result/multiple-comparison.xlsx"
};

var request = new ComparisonsRequest(options);
var response = compareApi.Comparisons(request);
如何在 Excel 中比較數據

源文件和目標Excel文件。

以下是完成比較後生成的結果工作簿的預覽。

比較 Excel 檔案在 C# 中。

使用 REST API 進行 Excel 比較的預覽。

獲取 C# 的變更列表

該 REST API 也提供獲取所有更改的列表以及在比較過程中發現的 Excel 工作表中比較數據的功能。

  • 首先,創建一個 CompareApi 的實例。
  • 接下來,設置輸入源 XLSX 檔案路徑。
  • 然後,設置目標 XLSX 文件路徑。
  • 接下來,初始化 ComparisonOptions 物件。
  • 然後,指定源/目標檔案並設置輸出檔案路徑。
  • 在那之後,創建 PostChangesRequest,並將 ComparisonOptions 物件作為參數。
  • 最後,通過調用 postChanges() 方法獲取結果。
var options = new ComparisonOptions
{
    SourceFile = new FileInfo { FilePath = "source.xlsx" },
    TargetFiles = new List<FileInfo> { new FileInfo { FilePath = "target.xlsx" } },
    OutputPath = "result/changes-summary.xlsx"
};

var request = new PostChangesRequest(options);
var changes = compareApi.PostChanges(request);

foreach (var change in changes)
{
    Console.WriteLine($"{change.Type}: {change.Text}");
}

試試線上版

如果您想在網頁瀏覽器中直接嘗試 API 的功能,而無需編寫任何代碼,您可以考慮使用我們的免費 Online XLSX comparison tool。這個 Excel 比較工具在線比較 2 個 Excel 工作表並返回結果。

比較線上 Excel 檔案

結論

在這篇文章中,我們展示了如何在 C# .NET 中比較 Excel 工作簿,以程式化的方式突出電子表格之間的差異,如何一次比較多個 Excel 文件,以及如何提取 Excel 文件變更的詳細列表。使用 GroupDocs.Comparison Cloud SDK for .NET,您可以自動化 Excel 文件比較,以提高準確性、節省時間並簡化數據驗證工作流程。

有用的鏈接

推薦文章