Excel è una delle applicazioni più utilizzate per l’analisi dei dati, la reportistica e la gestione finanziaria. Spesso, è necessario confrontare due o più cartelle di lavoro Excel per identificare le modifiche, convalidare gli aggiornamenti o tracciare le revisioni. Farlo manualmente può richiedere tempo e essere soggetto a errori. Fortunatamente, con il GroupDocs.Comparison Cloud SDK per .NET, puoi confrontare programmaticamente le cartelle di lavoro Excel in C# e generare un nuovo file con tutte le differenze evidenziate.
In questo tutorial, imparerai come:
- Come impostare l’API di confronto di Excel
- Confronta due file Excel utilizzando C#
- Confronta più cartelle di lavoro Excel in C#
- Ottieni l’elenco delle modifiche in C#
Come impostare l’API di confronto di Excel
Per confrontare Excel XLSX files, utilizzeremo il GroupDocs.Comparison Cloud SDK for .NEt. Ti consente di confrontare fogli di calcolo, tenere traccia delle modifiche e salvare i risultati in un unico file Excel.
Installa il SDK tramite NuGet:
Install-Package GroupDocs.Comparison-Cloud
Prima di eseguire il seguente frammento di codice, per favore ottieni il tuo Client ID e Client Secret dal cloud dashboard.
Confronta due file Excel utilizzando C#
Puoi confrontare due file Excel in C# seguendo questi passaggi:
- Upload the source and target Excel workbooks.
- Esegui il confronto utilizzando l’API GroupDocs.Comparison.
- Scarica il file risultante con le modifiche evidenziate.
Carica cartella di lavoro Excel
In order to perform the comparison operation, firstly, we need to upload the source and target XLSX files to the cloud storage using the following code sample:
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));
}
Confronta i file Excel
Ora utilizza il seguente codice per confrontare due cartelle di lavoro Excel. Una volta eseguito, l’API genera una nuova cartella di lavoro Excel contenente le modifiche evidenziate tra i due fogli di calcolo.
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);
Confronta più cartelle di lavoro Excel in C#
L’API REST offre anche la possibilità di confrontare più cartelle di lavoro Excel. Si prega di seguire i passaggi specificati di seguito.
- In primo luogo, creare un’istanza del CompareApi.
- In secondo luogo, carica i file Excel di input nel cloud storage.
- Ora, inizializza l’oggetto ComparisonOptions dove definiamo i file Excel di input e risultato.
- Poi, crea un oggetto di ComparisonsRequest dove passiamo l’oggetto ComparisonOptions come argomento.
- Infine, confronta i file Excel utilizzando Comparisons() chiamata 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);

File Excel di origine e di destinazione.
Di seguito è riportante un’anteprima del workbook risultante generato dopo il completamento del confronto.

Un’anteprima del confronto di Excel utilizzando l’API REST.
Ottieni l’elenco delle modifiche in C#
L’API REST offre anche la possibilità di ottenere un elenco di tutte le modifiche e confrontare i dati nei fogli di lavoro di Excel trovati durante il processo di confronto.
- In primo luogo, creare un’istanza del CompareApi.
- Successivamente, impostare il percorso del file sorgente XLSX.
- Poi, imposta il percorso del file XLSX di destinazione.
- Successivamente, inizializza l’oggetto ComparisonOptions.
- Quindi, assegna i file sorgente/destinazione e imposta il percorso del file di output.
- Dopo di ciò, crea il PostChangesRequest con l’oggetto ComparisonOptions come argomento.
- Infine, ottieni i risultati chiamando il postChanges() metodo.
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}");
}
Prova Online
Se vuoi provare le capacità dell’API direttamente all’interno di un browser web, senza scrivere una sola riga di codice, potresti prendere in considerazione l’utilizzo del nostro strumento gratuito Online XLSX comparison tool. Questo strumento di confronto Excel confronta 2 fogli di lavoro Excel online e restituisce i risultati.

Conclusione
In questo articolo, abbiamo dimostrato come confrontare i file Excel in C# .NET, evidenziare le differenze tra i fogli di calcolo in modo programmatico, confrontare più file Excel contemporaneamente e come estrarre un elenco dettagliato delle modifiche nei file Excel. Con il GroupDocs.Comparison Cloud SDK per .NET, puoi automatizzare il confronto dei file Excel per migliorare l’accuratezza, risparmiare tempo e semplificare i flussi di lavoro di validazione dei dati.