I formati di file XLSX e XLS vengono spesso utilizzati per manipolare dati di grandi dimensioni. Allo stesso modo, i filtri automatici vengono utilizzati per organizzare i dati nei file Excel. Puoi facilmente aggiungere o rimuovere il filtro automatico nei file Excel con l’API Aspose.Cells for .NET. I filtri possono essere utilizzati per quantificare alcuni dati per estrarre alcune informazioni significative. Ad esempio, un’organizzazione vuole filtrare i mesi con vendite basse, al fine di ideare e migliorare le proprie strategie. In questo articolo, esploreremo il filtraggio dei dati utilizzando i filtri automatici in C#:

Aggiungi o rimuovi filtro automatico nei file Excel - Installazione API

L’API Aspose.Cells for .NET ti consente di lavorare in modo efficiente con fogli di calcolo Excel. Puoi creare, modificare o manipolare XLS, XLSX e altri formati supportati a livello di codice con un codice minimo. Puoi scaricare e installare il pacchetto MSI o ZIP dalla sezione Download o semplicemente installarlo tramite la galleria NuGet nella tua soluzione. Ad esempio, puoi installarlo facilmente nel tuo ambiente usando il comando seguente:

Install-Package Aspose.Cells -Version 20.9.0

Dopo aver installato correttamente l’API, procediamo con alcuni dei casi d’uso importanti e utili.

Applica il filtro automatico sulle celle nei file di Excel usando C#

Puoi applicare il filtro automatico su un intervallo specifico di celle nei file Excel. Ciò consente di ordinare i valori in ordine crescente o decrescente, nonché altri filtri numerici quando le celle contengono valori numerici. È necessario seguire i seguenti passaggi per applicare il filtro automatico nei file di Excel utilizzando C#:

  1. Apri un file Excel e accedi al Foglio di lavoro
  2. Crea Filtro automatico specificando un intervallo di celle specifico
  3. Salva il file XLS/XLSX di output

Il frammento di codice mostra come applicare il filtro automatico sulle celle nel file Excel usando C#:

// Creazione di un'istanza di un oggetto Workbook
// Apertura del file Excel tramite il flusso di file
Aspose.Cells.Workbook workbook = new Aspose.Cells.Workbook(dataDir + "book1.xls");

// Accesso al primo foglio di lavoro nel file Excel
Aspose.Cells.Worksheet worksheet = workbook.Worksheets[0];

// Creazione di filtro automatico fornendo l'intervallo di celle della riga di intestazione
worksheet.AutoFilter.Range = "A1:B1";

// Salvataggio del file Excel modificato
workbook.Save(dataDir + "output.xlsx");

Puoi notare il filtro automatico aggiunto nel file XLSX di origine nello screenshot qui sotto:

Filtro automatico-Excel-Csharp

Aggiungi filtro automatico data in XLSX usando C#

I dati nei file Excel contengono spesso informazioni relative alle date. A volte potrebbe essere necessario esplorare le informazioni in base a diversi periodi di tempo che possono essere identificati dalle date. Ad esempio, consideriamo il caso in cui è necessario filtrare i dati relativi a gennaio 2018, quindi è necessario seguire i seguenti passaggi:

  1. Carica foglio di lavoro di input
  2. Accesso a un foglio di lavoro
  3. Aggiungi filtro data e salva il file di output

L’esempio di codice seguente segue questi passaggi e mostra come aggiungere il filtro automatico della data nei file di Excel usando C#:

// Creazione di un'istanza di un oggetto Workbook
// Apertura del file Excel tramite il flusso di file
Workbook workbook = new Workbook(dataDir + "Date.xlsx");

// Accesso al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.Worksheets[0];

// Chiama la funzione AddDateFilter per applicare il filtro
worksheet.AutoFilter.AddDateFilter(0, DateTimeGroupingType.Month, 2018, 1, 0, 0, 0, 0);

// Chiama la funzione di aggiornamento per aggiornare il foglio di lavoro
worksheet.AutoFilter.Refresh();

// Salvataggio del file Excel modificato
workbook.Save(dataDir + "FilteredDate.xlsx");

Aggiungi filtro automatico data dinamico in XLSX usando C#

Come abbiamo già discusso, lo scenario del filtraggio dei dati in base alle date. Tuttavia, lo scenario della data può essere anche un po’ più generico, in alcuni scenari. Ad esempio, abbiamo bisogno che i dati vengano filtrati per il mese di gennaio indipendentemente dall’anno. Tali requisiti possono essere facilmente gestiti con un filtro data dinamico utilizzando i passaggi seguenti:

  1. Carica il file XLSX di input
  2. Accedi a un foglio di lavoro
  3. Imposta DynamicFilter per il mese di gennaio
  4. Salva il foglio Excel di output

Questo esempio è la continuazione dell’esempio precedente, in cui il frammento di codice seguente mostra come aggiungere un filtro automatico della data dinamica in un file Excel usando C#:

// Creazione di un'istanza di un oggetto Workbook
// Apertura del file Excel tramite il flusso di file
Workbook workbook = new Workbook(dataDir + "Date.xlsx");

// Accesso al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.Worksheets[0];

// Chiama la funzione DynamicFilter per applicare il filtro
worksheet.AutoFilter.DynamicFilter(0, DynamicFilterType.January);

// Chiama la funzione di aggiornamento per aggiornare il foglio di lavoro
worksheet.AutoFilter.Refresh();

// Salvataggio del file Excel modificato
workbook.Save(dataDir + "FilteredDynamicDate.xlsx");

Applicare il filtro automatico del numero personalizzato in XLSX con C#

Puoi filtrare i dati in base a un intervallo di numeri personalizzato usando Aspose.Cells per .NET API. Ad esempio, quando un’azienda ha bisogno di accedere a quanti dei suoi dipendenti hanno raggiunto gli obiettivi di vendita. Allo stesso modo, potrebbero esserci molte possibilità in cui questa tecnica di filtraggio può aiutare. Assumiamo un caso in cui è necessario filtrare tutti i dati in cui i numeri sono compresi nell’intervallo 5 e 10 inclusi, quindi è necessario seguire i passaggi seguenti:

  1. Crea un’istanza di un oggetto Cartella di lavoro e carica il file di input
  2. Aggiungi un filtro numerico personalizzato in un foglio di lavoro specifico
  3. Salva il file Excel di output

Sulla base di questi passaggi, il codice seguente mostra come aggiungere il filtro automatico del numero personalizzato utilizzando C#:

// Creazione di un'istanza di un oggetto Workbook
// Apertura del file Excel tramite il flusso di file
Workbook workbook = new Workbook(dataDir + "Number.xlsx");

// Accesso al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.Worksheets[0];

// Chiama la funzione Custom per applicare il filtro
worksheet.AutoFilter.Custom(0, FilterOperatorType.GreaterOrEqual, 5, true, FilterOperatorType.LessOrEqual, 10);

// Chiama la funzione di aggiornamento per aggiornare il foglio di lavoro
worksheet.AutoFilter.Refresh();

// Salvataggio del file Excel modificato
workbook.Save(dataDir + "FilteredNumber.xlsx");

Aggiungi filtro automatico personalizzato con contiene usando C#

Spostandoci di un altro passo oltre il filtro automatico del numero personalizzato, impariamo come aggiungere il filtro automatico personalizzato che può essere utilizzato per tenere traccia di testo specifico utilizzando l’operatore filtro contiene. Può essere utile cercare parole in cui qualsiasi testo è parzialmente o completamente presente nei dati. È necessario seguire i seguenti passaggi per raggiungere questi requisiti:

  1. Carica il file Excel di input con i dati
  2. Specificare l’intervallo Filtro automatico e il TipoOperatoreFiltro
  3. Salva il file XLSX di output

Il frammento di codice seguente mostra come aggiungere filtro automatico personalizzato con contiene usando C#:

// Creazione di un'istanza di un oggetto Workbook contenente dati di esempio
Workbook workbook = new Workbook(dataDir + "sourseSampleCountryNames.xlsx");

// Accesso al primo foglio di lavoro nel file Excel
Worksheet worksheet = workbook.Worksheets[0];

// Creazione di filtro automatico fornendo l'intervallo di celle
worksheet.AutoFilter.Range = "A1:A18";

// Inizializza il filtro per le righe contenenti la stringa "Ba"
worksheet.AutoFilter.Custom(0, FilterOperatorType.Contains, "Ba");

//Aggiorna il filtro per mostrare/nascondere le righe filtrate
worksheet.AutoFilter.Refresh();

// Salvataggio del file Excel modificato
workbook.Save(dataDir + "outSourseSampleCountryNames.xlsx");

Rimuovere o eliminare il filtro automatico in Excel utilizzando C#

Poiché abbiamo appreso diversi scenari di aggiunta di filtri automatici nei file Excel utilizzando C#, diamo un’occhiata al contrario. Il caso d’uso della rimozione o dell’eliminazione dei filtri automatici da Excel è ugualmente importante e fondamentale. È necessario seguire i passaggi seguenti per rimuovere tutti i filtri automatici da un file XLSX:

  1. Carica il file XLSX di input
  2. Scorri ogni foglio di lavoro e rimuovi Filtri automatici
  3. Salva file di output

Il frammento di codice seguente mostra come rimuovere i filtri automatici dai file di Excel usando C#:

// Creazione di un'istanza di un oggetto Workbook
// Apertura del file Excel
Workbook workbook = new Workbook(dataDir + "output.xlsx");
// Scorri ogni foglio di lavoro
foreach (var sheet in workbook.Worksheets)
{
    // Rimuovere i filtri automatici
    sheet.RemoveAutoFilter();
}
// Salva la cartella di lavoro
workbook.Save(dataDir + "AutoFilter_Removed.xlsx", SaveFormat.Xlsx);

Conclusione

Aspose.Cells per .NET API offre diverse funzionalità pronte all’uso. L’aggiunta, la rimozione o l’eliminazione di un filtro automatico utilizzando C# in .NET Framework è semplice e facile. Abbiamo discusso in dettaglio diverse possibilità. In caso di dubbi o dubbi, non esitare a contattarci al Forum di supporto gratuito.

Guarda anche