Excel jest jedną z najczęściej używanych aplikacji do analizy danych, raportowania i zarządzania finansami. Często zachodzi potrzeba porównania dwóch lub więcej skoroszytów Excel, aby zidentyfikować zmiany, zweryfikować aktualizacje lub śledzić rewizje. Robienie tego ręcznie może być czasochłonne i podatne na błędy. Na szczęście, dzięki GroupDocs.Comparison Cloud SDK dla .NET, możesz programowo porównywać skoroszyty Excel w C# i generować nowy plik ze wszystkimi wyróżnionymi różnicami.

W tym samouczku nauczysz się, jak:

Jak skonfigurować API porównania Excel

Aby porównać Excel XLSX files, użyjemy GroupDocs.Comparison Cloud SDK for .NEt. Umożliwia to porównywanie arkuszy kalkulacyjnych, śledzenie zmian i zapisywanie wyników w jednym skoroszycie Excel.

Zainstaluj SDK za pomocą NuGet:

Install-Package GroupDocs.Comparison-Cloud

Przed uruchomieniem poniższego fragmentu kodu, proszę uzyskać swój identyfikator klienta i tajny klucz klienta z cloud dashboard.

Porównaj dwa pliki Excel przy użyciu C#

Możesz porównać dwa pliki Excel w C# wykonując następujące kroki:

  1. Upload the source and target Excel workbooks.
  2. Uruchom porównanie za pomocą interfejsu API GroupDocs.Comparison.
  3. Pobierz wynikowy plik z wyróżnionymi zmianami.

Prześlij arkusz kalkulacyjny Excel

Aby przeprowadzić operację porównania, najpierw musimy przesłać pliki XLSX źródłowy i docelowy do pamięci w chmurze, korzystając z poniższego przykładu kodu:

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));
}

Porównaj skoroszyty Excel

Teraz użyj poniższego fragmentu kodu, aby porównać dwa skoroszyty Excela. Po wykonaniu, API generuje nowy skoroszyt Excela zawierający wyróżnione zmiany między dwoma arkuszami kalkulacyjnymi.

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);

Porównaj wiele skoroszytów Excel w C#

API REST również oferuje możliwość porównania wielu skoroszytów Excel. Proszę postępować zgodnie z poniższymi krokami.

  • Najpierw utwórz instancję CompareApi.
  • Secondly, upload the input Excel workbooks into cloud storage.
  • Teraz zainicjalizuj obiekt ComparisonOptions, w którym definiujemy pliki robocze Excel wejściowe i wynikowe.
  • Następnie stwórz obiekt ComparisonsRequest, gdzie przekazujemy obiekt ComparisonOptions jako argument.
  • Ostatecznie porównaj skoroszyty Excela za pomocą Comparisons() wywołania API.
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);
Jak porównywać dane w excelu

Source and target Excel files.

Poniżej znajduje się podgląd wynikowego skoroszytu wygenerowanego po zakończeniu porównania.

porównaj pliki Excel w C#.

Podgląd porównania Excela za pomocą REST API.

Get List of Changes in C#

REST API oferuje również funkcjonalność uzyskiwania listy wszystkich zmian oraz porównywania danych w arkuszach kalkulacyjnych Excel znalezionych podczas procesu porównywania.

  • Najpierw utwórz instancję CompareApi.
  • Następnie ustaw ścieżkę do pliku źródłowego XLSX.
  • Następnie ustaw ścieżkę do docelowego pliku XLSX.
  • Następnie zainicjalizuj obiekt ComparisonOptions.
  • Następnie przypisz pliki źródłowe/docelowe i ustaw ścieżkę pliku wyjściowego.
  • Po tym, utwórz obiekt PostChangesRequest z obiektem ComparisonOptions jako argumentem.
  • W końcu uzyskaj wyniki, wywołując metodę 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}");
}

Spróbuj online

Jeśli chcesz przetestować możliwości API bezpośrednio w przeglądarce internetowej, nie pisząc ani jednej linii kodu, możesz rozważyć skorzystanie z naszego darmowego Online XLSX comparison tool. To narzędzie do porównywania Excela porównuje 2 arkusze Excela online i zwraca wyniki.

porównaj pliki excel online

Wniosek

W tym artykule pokazaliśmy, jak porównywać skoroszyty Excel w C# .NET, programowo wyróżniać różnice między arkuszami kalkulacyjnymi, porównywać wiele plików Excel jednocześnie oraz jak wyodrębnić szczegółową listę zmian w plikach Excel. Dzięki GroupDocs.Comparison Cloud SDK dla .NET, możesz zautomatyzować porównywanie plików Excel, aby poprawić dokładność, zaoszczędzić czas i uprościć workflow walidacji danych.

Przydatne linki

Rekomendowane Artykuły