Com crear i omplir un model de dades d'un full de càlcul en C++

Com crear i omplir un model de dades d'un full de càlcul en C++

Aquesta guia mostra com crear un llibre de treball, omplir cèl·lules amb valors i fórmules, aplicar estils i guardar-los en fitxer d’elaboració utilitzant la biblioteca Aspose.Cells FOSS per a C++. Les classes bàsiques involucrades són: Workbook, Worksheet, Cell, i Style.

Guia de pas a pas

Pas 1: Prepara la construcció

Afegir la biblioteca Cells FOSS al projecte CMake i enllaçar el Aspose.Cells.Foss.Cpp objectiu:

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)

Pas 2: Inclou els encabezats i fixa l’espai de noms

Inclou els encabezaments per classe de: aspose/cells_foss/ per cada classe que utilitzeu (Workbook.h, Worksheet.h, Cell.h, Style.h, Font.h, Color.h, CellArea.h), després obre el Aspose::Cells_FOSS espai de noms:

using namespace Aspose::Cells_FOSS;

Pas 3: Crear un llibre de treball i nomenar la pàgina

Instantiate Workbook, recuperar la primera plantilla a través de: GetWorksheets()[0], i fixar el seu nom d’ visualització:

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

Pas 4: Ajuntar valors de cèl·lula

Call GetCells()["A1"].PutValue() per escriure cadenes de text, valors numèrics i booleans en cèl·lules individuals segons adreces:

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);

Pas 5: Configura una fórmula

Call SetFormula() en una cèl·lula per emmagatzemar una cadena de fórmules compatible amb Excel; la fórmula s’evalua per Excel quan es obrirà el fitxer:

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

Pas 6: Aplicar l’estil de cèl·lula

Tingues l’estil amb Cell::GetStyle(), modificar-la i aplicar amb el mateix procediment. 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);

Pas 7: Fondre cèl·lules

Utilització: Cells::Merge per combinar un interval en una sola cel·la:

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

Pas 8: Salvar el llibre de treball

Call workbook.Save() amb un nom de fitxer per escriure la plantilla com a arxiu XLSX, després cridar Dispose() per alliberar recursos:

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

Problemes comuns i fixos

No s’ha aplicat estil després de guardar Sempre trucar. Cell::SetStyle(style) Modificar directament l’estil retorn no aplica canvis; has de tornar a posar-lo explícitament.

Fórmula emmagatzemada com a cadena literal Utilització: SetFormula("=SUM(...)") no, no és així. PutValue("=SUM(...)"). PutValue tracta l’argument com una cadena literal, no una fórmula.

Cel·la fusionada no es presenta correctament Assegureu-vos que els paràmetres de fusió (fixa, columna, rowCount, ColumnCounting) s’estenguin correctament en el rang previst. No es suporten les fusions superposades.

El llibre de treball no té fitxes després de la construcció. Una ficha predeterminada sempre es crea per: Workbook().- Truca. GetWorksheets()[0] per accedir-hi.

Disposar no es diu Sempre trucar. workbook.Dispose() per alliberar recursos, especialment en aplicacions de llarga durada.

Preguntes freqüents

Puc afegir múltiples fulles de treball a un llibre de feina?

Sí, utilitzeu-la. Workbook::GetWorksheets() Per accedir a la col·lecció i afegir fitxes de forma programàtica. Assegureu-vos que cada fulla té un nom únic utilitzant el sistema d’identificació del codi, per exemple: Workbook::EnsureUniqueSheetName().

Com configuro un format de número per a una cèl·lula?

Utilització: Style::SetNumberFormat(format) abans de trucar. Cell::SetStyle(style). Les cadenes de format segueixen la sintaxi estàndard del format de números d’Excel.

Puc aplicar el mateix estil a diverses cèl·lules?

Si. Obteniu el estil una vegada, modifiqueu-lo i després trucareu a la meva empresa. SetStyle(style) en cada cèl·lula objectiu.

La fórmula s’avalua quan es guarda?

No. L’avaluació de la fórmula succeeix en Excel o un lector compatible quan s’obre el fitxer. La biblioteca escriurà la cadena de fórmules a la cèl·lula.

Quantes files i columnes pot contenir una fitxa de treball?

Cada feuilla de treball conté dades a través de la seva xarxa completa de files i columnes, seguint les dimensions estàndard de plantilla.

See Also

 Català