Ajouter et récupérer des données

Ajout de données aux cellules

Aspose.Cells fournit une classe Workbook qui représente un fichier Microsoft Excel. La classe Workbook contient une collection Worksheets permettant d’accéder à chaque feuille de calcul du fichier Excel. Une feuille de calcul est représentée par la classe Worksheet. La classe Worksheet fournit une collection Cells. Chaque élément de la collection Cells représente un objet de la classe Cell.

Aspose.Cells permet aux développeurs d’ajouter des données aux cellules des feuilles de calcul en appelant la méthode PutValue de la classe Cell. Aspose.Cells fournit des versions surchargées de la méthode PutValue permettant aux développeurs d’ajouter différents types de données aux cellules. En utilisant ces versions surchargées de la méthode PutValue, il est possible d’ajouter des valeurs booléennes, des chaînes, des nombres à virgule flottante, des entiers ou des valeurs de date/heure, etc. à la cellule.

Aspose::Cells::Startup();
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
//Path of input
U16String dirPath(u"");
//Path of output
U16String outPath(u"");
//Path of input excel file
U16String sampleData = dirPath + u"sampleData.xlsx";
//Path of output excel file
U16String outputData = outPath + u"outputData.xlsx";
//Read input excel file
Workbook workbook(sampleData);
//Accessing the second worksheet in the Excel file
Worksheet worksheet = workbook.GetWorksheets().Get(1);
//Adding a string value to the cell
worksheet.GetCells().Get(u"A1").PutValue(u"Hello World");
//Adding a double value to the cell
worksheet.GetCells().Get(u"A2").PutValue(20.5);
//Adding an integer value to the cell
worksheet.GetCells().Get(u"A3").PutValue(15);
//Adding a boolean value to the cell
worksheet.GetCells().Get(u"A4").PutValue(true);
//Setting the display format of the date
Cell cell = worksheet.GetCells().Get(u"A5");
Style style = cell.GetStyle();
style.SetNumber(15);
cell.SetStyle(style);
//Save the workbook
workbook.Save(outputData);
Aspose::Cells::Cleanup();

Améliorer l’efficacité

Si vous utilisez la méthode PutValue pour insérer une grande quantité de données dans une feuille de calcul, vous devriez ajouter des valeurs aux cellules, d’abord par lignes, puis par colonnes. Cette approche améliore considérablement l’efficacité de vos applications.

Récupération de données à partir des cellules

Aspose.Cells fournit une classe Workbook qui représente un fichier Microsoft Excel. La classe Workbook contient une collection Worksheets permettant d’accéder aux feuilles de calcul du fichier. Une feuille de calcul est représentée par la classe Worksheet. La classe Worksheet fournit une collection Cells. Chaque élément de la collection Cells représente un objet de la classe Cell.

La classe Cell fournit plusieurs méthodes permettant aux développeurs de récupérer des valeurs à partir des cellules selon leurs types de données. Ces méthodes comprennent :

Lorsqu’un champ n’est pas rempli, les cellules avec GetDoubleValue ou GetFloatValue lèvent une exception.

Le type de données contenu dans une cellule peut également être vérifié en utilisant la méthode GetType de la classe Cell. En fait, la méthode GetType de la classe Cell est basée sur l’énumération CellValueType dont les valeurs prédéfinies sont énumérées ci-dessous :

Types de valeur de cellule Description
CellValueType_IsBool Indique que la valeur de la cellule est booléenne.
CellValueType_IsDateTime Indique que la valeur de la cellule est date/heure.
CellValueType_IsNull Représente une cellule vide.
CellValueType_IsNumeric Indique que la valeur de la cellule est numérique.
CellValueType_IsString Indique que la valeur de la cellule est une chaîne de caractères.
CellValueType_IsUnknown Indique que la valeur de la cellule est inconnue.
Vous pouvez également utiliser les types de valeur de cellule prédéfinis ci-dessus pour comparer avec le type de données présent dans chaque cellule.
Aspose::Cells::Startup();
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
//Path of input
U16String dirPath(u"");
//Path of output
U16String outPath(u"");
//Path of input excel file
U16String sampleData = dirPath + u"sampleData.xlsx";
//Read input excel file
Workbook workbook(sampleData);
//Accessing the third worksheet in the Excel file
Worksheet worksheet = workbook.GetWorksheets().Get(2);
//Get cells from sheet
Cells cells = worksheet.GetCells();
//Variable declarations
U16String strVal;
Date dateVal;
double dblVal;
bool boolVal;
Enumerator<Cell> enCell = cells.GetEnumerator();
while (enCell.MoveNext())
{
Cell cell = enCell.GetCurrent();
switch (cell.GetType())
{
//Evaluating the data type of the cell data for string value
case CellValueType::IsString:
std::cout <<"Cell Value Type Is String." << std::endl;
strVal = cell.GetStringValue();
break;
//Evaluating the data type of the cell data for double value
case CellValueType::IsNumeric:
std::cout <<"Cell Value Type Is Numeric." << std::endl;
dblVal = cell.GetDoubleValue();
break;
//Evaluating the data type of the cell data for boolean value
case CellValueType::IsBool:
std::cout <<"Cell Value Type Is Bool." << std::endl;
boolVal = cell.GetBoolValue();
break;
//Evaluating the data type of the cell data for date/time value
case CellValueType::IsDateTime:
std::cout <<"Cell Value Type Is DateTime." << std::endl;
dateVal = cell.GetDateTimeValue();
break;
//Evaluating the unknown data type of the cell data
case CellValueType::IsUnknown:
cell.GetStringValue();
break;
default:
break;
}
}
Aspose::Cells::Cleanup();