Excel є одним із найпоширеніших додатків для аналізу даних, звітування та управління фінансами. Часто потрібно порівняти дві або більше книг Excel, щоб виявити зміни, перевірити оновлення або відстежити редакції. Робити це вручну може бути耗用 часу та схильним до помилок. На щастя, з GroupDocs.Comparison Cloud SDK для .NET ви можете програмно порівнювати книги Excel у C# та створити новий файл з усіма підкресленими відмінностями.

В цьому посібнику ви дізнаєтеся, як:

Як налаштувати API для порівняння Excel

Щоб порівняти Excel XLSX files, ми використаємо GroupDocs.Comparison Cloud SDK for .NEt. Це дозволяє вам порівнювати електронні таблиці, відстежувати зміни та зберігати результати в одному файлі Excel.

Встановіть SDK через NuGet:

Install-Package GroupDocs.Comparison-Cloud

Перед тим як виконати наступний фрагмент коду, будь ласка, отримайте свій Client ID та Client Secret з cloud dashboard.

Порівняйте два файли Excel за допомогою C#

Ви можете порівняти два файли Excel в C#, дотримуючись наступних кроків:

  1. Завантажте джерела та цільові Excel книги.
  2. Запустіть порівняння, використовуючи API GroupDocs.Comparison.
  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);

Порівняти кілька книг Excel в C#

REST API також надає можливості для порівняння кількох книг Excel. Будь ласка, дотримуйтесь вказаних нижче кроків.

  • По-перше, створіть екземпляр CompareApi.
  • По-друге, завантажте вихідні Excel книги в хмарне сховище.
  • Тепер ініціалізуйте об’єкт ComparisonOptions, де ми визначаємо вхідні та результуючі Excel книги.
  • Тоді створіть об’єкт ComparisonsRequest, де ми передаємо об’єкт ComparisonOptions як аргумент.
  • Нарешті, порівняйте книги Excel, використовуючи Comparisons() 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);
Як порівняти дані в Excel

Source and target Excel files.

Дано нижче є попередній перегляд отриманого робочого зошита, згенерованого після завершення порівняння.

порівняти файли Excel у C#.

Попередній перегляд порівняння Excel з використанням REST API.

Отримати список змін у 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 онлайн

Висновок

У цій статті ми продемонстрували, як порівнювати книги Excel у C# .NET, підкреслювати відмінності між електронними таблицями програмно, порівнювати кілька файлів Excel одночасно та як витягнути детальний список змін у файлах Excel. За допомогою GroupDocs.Comparison Cloud SDK для .NET ви можете автоматизувати порівняння файлів Excel, щоб підвищити точність, заощадити час і спростити робочі процеси валідації даних.

Корисні посилання

Рекомендовані статті