Comment créer et populer un modèle de données dans le C++

Comment créer et populer un modèle de données dans le C++

Ce guide montre comment créer un livre de travail, populer les cellules avec des valeurs et des formules, appliquer les styles et enregistrer comme fichier de feuille d’écran à l’aide du Aspose.Cells FOSS pour la bibliothèque C++. Workbook, Worksheet, Cell,et Style.

Guide étape par étapes

Étape 1 : Démarrer la construction

Ajouter la bibliothèque Cells FOSS à votre projet CMake et relire le lien vers les Aspose.Cells.Foss.Cpp Objectif :

cmake_minimum_required(VERSION 3.15)
project(CreateSpreadsheet CXX)
set(CMAKE_CXX_STANDARD 17)

add_subdirectory(path/to/Aspose.Cells-FOSS-for-Cpp)
add_executable(CreateSpreadsheet main.cpp)
target_link_libraries(CreateSpreadsheet PRIVATE Aspose.Cells.Foss.Cpp)

Étape 2 : Inclure les heads et définir le nomespace

Il y a des titres de classe par aspose/cells_foss/ Pour chaque classe que vous utilisez (Workbook.h, Worksheet.h, Cell.h, Style.h, Font.h, Color.h, CellArea.hPuis ouvrir le Aspose::Cells_FOSS Nom du site :

using namespace Aspose::Cells_FOSS;

Étape 3 : Créer un livre de travail et nommer la feuille

Instantané Workbook,Récupérer la première feuille de travail par GetWorksheets()[0],Et il a donné son nom de l’affichage :

int main() {
    Workbook workbook;
    Worksheet& sheet = workbook.GetWorksheets()[0];
    sheet.SetName("Sales");
    return 0;
}

Étape 4 : Ajouter des valeurs cellulaires

Appel à GetCells()["A1"].PutValue() Pour écrire des lignes de texte, les valeurs numériques et les booleans dans des cellules individuelles par adresse :

sheet.GetCells()["A1"].PutValue("Product");
sheet.GetCells()["B1"].PutValue("Price");
sheet.GetCells()["A2"].PutValue("Widget");
sheet.GetCells()["B2"].PutValue(9.99);
sheet.GetCells()["A3"].PutValue("Gadget");
sheet.GetCells()["B3"].PutValue(24.99);

Étape 5 : Faites une formule

Appel à SetFormula() sur une cellule pour stocker un fil de formule compatible avec Excel; la formelle est évaluée par Excel lorsque le fichier est ouvert:

sheet.GetCells()["B4"].SetFormula("=SUM(B2:B3)");

Étape 6 : Appliquer le style cellulaire

Obtenez le style avec Cell::GetStyle(),modifier et appliquer avec Cell::SetStyle(style):

Style headerStyle = sheet.GetCells()["A1"].GetStyle();
Font font;
font.SetBold(true);
font.SetColor(Color::FromArgb(255, 255, 255, 255));
headerStyle.SetFont(font);
headerStyle.SetPattern(FillPattern::Solid);
headerStyle.SetForegroundColor(Color::FromArgb(255, 34, 120, 212));
sheet.GetCells()["A1"].SetStyle(headerStyle);
sheet.GetCells()["B1"].SetStyle(headerStyle);

Étape 7 : Mélanger les cellules

Utiliser Cells::Merge Pour combiner une cellule en un seul ensemble :

CellArea titleArea = CellArea::CreateCellArea("A1", "B1");
sheet.GetCells().Merge(0, 0, 1, 2);

Étape 8 : Sauver le livre de travail

Appel à workbook.Save() avec un nom de fichier pour écrire la feuille d’écran comme un fichie XLSX, puis appeler Dispose() Pour libérer les ressources :

workbook.Save("sales.xlsx");
workbook.Dispose();

Problèmes communs et fixations

Le style n’est pas appliqué après sauvegarde Toujours appeler Cell::SetStyle(style) modifier le style retourné directement ne s’applique pas les changements; vous devez explicitement la réinstaller.

Formule stockée comme string littéraire Utiliser SetFormula("=SUM(...)") pas non PutValue("=SUM(...)"). PutValue Il traite l’argument comme une ligne littéraire, pas une formule.

La cellule qui ne rend pas correctement Assurez-vous que les paramètres de fusion (roule, colonne, rowCount, ColonneCounta) s’étendent correctement à l’intervalle prévu.

Le livre de travail n’a pas de feuilles après la construction Un fichier de défaut est toujours créé par Workbook().- appeler GetWorksheets()[0] pour l’accéder.

Pas de téléphone Toujours appeler workbook.Dispose() pour libérer les ressources, en particulier dans les applications à long terme.

Questions fréquemment posées

Puis-je ajouter plusieurs feuilles de travail à un seul livre de travaux?

Oui, utilisez Workbook::GetWorksheets() pour accéder à la collection et ajouter des feuilles de manière programmée. assurez-vous que chaque feuille a un nom unique en utilisant Workbook::EnsureUniqueSheetName().

Comment définir un format numérique pour une cellule ?

Utiliser Style::SetNumberFormat(format) Avant de appeler Cell::SetStyle(style).Les filets de format suivent la syntaxe standard du format numéro Excel.

Puis-je appliquer le même style à plusieurs cellules ?

Obtenez le style une fois, modifiez-le, puis appelez SetStyle(style) sur chaque cellule cible.

La formule est-elle évaluée lorsqu’elle a été sauvée ?

Non. L’évaluation de la formule se produit dans Excel ou un lecteur compatible lorsque le fichier est ouvert. La bibliothèque écrit la ligne de formulaire à la cellule.

Combien de lignes et de colonnes peut-on tenir dans un feuille de travail ?

Chaque feuille de travail tient les données sur son réseau complet de rangs et de colonnes, suivant les dimensions standard du feuilleton.

Voir aussi

 Français