En este tutorial, aprenderemos cómo agregar filtro en el archivo XLSX usando C++. Puede insertar un filtro en la hoja de cálculo de Excel en Microsoft Windows, Linux, etc. mediante programación en C++.
Pasos para agregar un filtro en un archivo XLSX usando C++
- Instale el paquete Aspose.Cells.Cpp con el complemento del administrador de paquetes NuGet
- Agregue la referencia al espacio de nombres Aspose::Cells
- Inicialice el objeto de clase Workbook para crear una instancia del nuevo libro de Excel
- Insertar valores de muestra en las celdas
- Establecer fórmula y rango para filtrar datos
- Incluya un filtro en una columna con el método AddFilter
- Guarde el archivo de salida de Excel después de filtrar los datos usando C++
En el siguiente ejemplo, explorará cómo crear un filtro en un archivo de Excel usando C++. Inicialice una hoja de trabajo vacía y * aplique un filtro en el archivo de Excel usando C++* simplemente siguiendo unos pocos pasos.
Código para agregar filtro en archivo de 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")); | |
} | |
}; |
Puede crear un filtro en un archivo de Excel usando C++ insertando datos y valores de muestra en las celdas. Puede filtrar fácilmente los datos en un archivo de Excel sin instalar MS Excel ni ninguna otra aplicación. En el ejemplo anterior, aprendimos Cómo convertir un archivo de Excel a CSV en C++ que explica la conversión de un archivo de Excel a un archivo CSV.