Dans ce didacticiel, nous allons apprendre à ajouter un filtre dans le fichier XLSX à l’aide de C++. Vous pouvez insérer un filtre dans une feuille de calcul Excel sous Microsoft Windows, Linux, etc. par programme en C++.
Étapes pour ajouter un filtre dans un fichier XLSX à l’aide de C++
- Installez le package Aspose.Cells.Cpp avec le plug-in de gestionnaire de packages NuGet
- Ajouter la référence à l’espace de noms Aspose::Cells
- Initialiser l’objet de classe Workbook pour instancier le nouveau classeur Excel
- Insérer des exemples de valeurs dans les cellules
- Définir la formule et la plage de filtrage des données
- Inclure un filtre dans une colonne avec la méthode AddFilter
- Enregistrez le fichier Excel de sortie après avoir filtré les données à l’aide de C++
Dans l’exemple suivant, vous découvrirez comment créer un filtre dans un fichier Excel à l’aide de C++. Initialisez une feuille de calcul vide et * appliquez le filtre dans le fichier Excel en utilisant C++ * simplement en suivant quelques étapes.
Code pour ajouter un filtre dans un fichier Excel en C++
#pragma once | |
#include "Aspose.Cells.h" | |
class ExcelFilterData | |
{ | |
void FilterExcelData() | |
{ | |
// Set the license for Aspose.Cells API for filtering data | |
intrusive_ptr<License> CellFilterLicense = new License(); | |
CellFilterLicense->SetLicense(new String("Aspose.Total.lic")); | |
// Instantiate the Workbook object to create empty file to filter out the data | |
intrusive_ptr<IWorkbook> FilterWorkbook = Factory::CreateIWorkbook(); | |
// Access the first worksheet using 0 index for filtering data | |
intrusive_ptr<IWorksheet> FilterWorksheet = FilterWorkbook->GetIWorksheets()->GetObjectByIndex(0); | |
// Adding sample data and values to cells for filtering | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("A1"))->PutValue("Fruits"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("B1"))->PutValue("Total"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("A2"))->PutValue("Blueberries"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("B2"))->PutValue("2500"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("A3"))->PutValue("Apples"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("B3"))->PutValue("1100"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("A4"))->PutValue("Mangoes"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("B4"))->PutValue("1500"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("A5"))->PutValue("Grapes"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("B5"))->PutValue("1200"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("A6"))->PutValue("Oranges"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("A5"))->PutValue("3000"); | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("B5"))->PutValue("Count:"); | |
// Set formula for filtering data | |
FilterWorksheet->GetICells()->GetObjectByIndex(new String("E1"))->SetFormula(new String("=SUBTOTAL(2,B1:B6)")); | |
// Set the range for applying AutoFilter | |
FilterWorksheet->GetIAutoFilter()->SetRange(new String("A1:B6")); | |
// Add an AutoFilter to a specific column | |
FilterWorksheet->GetIAutoFilter()->AddFilter(0 , new String("Grapes")); | |
FilterWorksheet->GetIAutoFilter()->Refresh(); | |
// Save the output Excel file with filtered data | |
FilterWorkbook->Save(new String ("FilterOutput.xlsx")); | |
} | |
}; |
Vous pouvez créer un filtre dans un fichier Excel à l’aide de C++ en insérant des exemples de données et de valeurs dans les cellules. Vous pouvez facilement filtrer les données dans un fichier Excel sans installer MS Excel ou toute autre application. Dans l’exemple précédent, nous avons appris Comment convertir un fichier Excel en CSV en C++ qui explique la conversion d’un fichier Excel en un fichier CSV.