כיצד ליצור ולפופולאציה של מודל נתונים שערים ב- C++
מדריך זה מראה כיצד ליצור ספר עבודה, להציב תאים עם ערכים וטופסאות, ליישם סגנונות, ולשמור כקובץ לוח זמנים באמצעות Aspose.Cells FOSS עבור ספריית C++. Workbook, Worksheet, Cell, ו Style.
הדרכה שלב אחר צעד
שלב 1: הגדרת הבניין
הוסף את ספריית Cells FOSS לפרויקט CMake שלך ולחבר את Aspose.Cells.Foss.Cpp מטרות :
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)שלב 2: כולל כותרות והגדיר שם חלל
כולל את המדרגות של מדרגה אחת aspose/cells_foss/ כל אחד מהכיתות שאתם משתמשים בו (Workbook.h, Worksheet.h, Cell.h, Style.h, Font.h, Color.h, CellArea.hלאחר מכן, פותחים את Aspose::Cells_FOSS שם מקומי :
using namespace Aspose::Cells_FOSS;שלב 3: יצירת ספר עבודה ושם את השורה
מיידית Workbook,קבלו את לוח העבודה הראשון באמצעות GetWorksheets()[0],תן את שם המראה שלך:
int main() {
Workbook workbook;
Worksheet& sheet = workbook.GetWorksheets()[0];
sheet.SetName("Sales");
return 0;
}שלב 4: הוסף ערכים תאים
שיחת טלפון GetCells()["A1"].PutValue() כדי לכתוב שורות טקסט, ערכים מספרים, ובוליאנים לתוך תאים בודדים על פי כתובת:
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);שלב 5: הגדרת טופס
שיחת טלפון SetFormula() על תא כדי לאחסן שורת נוסחה תואמת Excel; הנוסחה מוערכת על ידי Excel כאשר הקובץ נפתח:
sheet.GetCells()["B4"].SetFormula("=SUM(B2:B3)");שלב 6: יישום סגנון תאים
קבלו את הסגנון עם Cell::GetStyle(),לשנות את זה, ולהחיל עם 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);שלב 7: תאי אינטגרציה
שימוש Cells::Merge כדי לשלב את המגוון לתוך תא יחיד:
CellArea titleArea = CellArea::CreateCellArea("A1", "B1");
sheet.GetCells().Merge(0, 0, 1, 2);שלב 8: הצלת ספר העבודה
שיחת טלפון workbook.Save() עם שם קובץ כדי לכתוב את הפרידף כקובצי XLSX, ולאחר מכן להתקשר Dispose() כדי לשחרר את המשאבים:
workbook.Save("sales.xlsx");
workbook.Dispose();בעיות נפוצות ותקנות
סגנון לא נעשה לאחר הצלת תמיד צלצל Cell::SetStyle(style) לאחר שינוי אובייקט הסגנון.שינוי סגנון החוזר ישירות לא יחול על שינויים; אתה חייב באופן מפורש להגדיר אותו בחזרה.
פורמולה מאוחסנת כקובץ מילולי שימוש SetFormula("=SUM(...)") לא PutValue("=SUM(...)"). PutValue הוא מתייחס לגיון כאל שורה מילולית ולא כמסורת.
תאים לא מתפרקים בצורה נכונה ודא כי הפרומטרים של שילוב (קוטב, עמוד, שורה, עותק) מתרחבים כראוי את הטווח המוצע.
ספר עבודה אין כתובות לאחר הבנייה שורה של דפוס תמיד נוצר על ידי Workbook().צלצול GetWorksheets()[0] כדי לגשת אליו.
לא נדרש להתקשר תמיד צלצל workbook.Dispose() לשחרר משאבים, במיוחד באפליקציות לטווח ארוך.
שאלות נפוצות שואלים
האם אני יכול להוסיף מספר עמודים לעבודה אחת?
כן – שימוש Workbook::GetWorksheets() כדי לגשת לאוסף ולהוסיף את השורות באופן תוכנית.בטיח כי כל שורה יש שם ייחודי באמצעות Workbook::EnsureUniqueSheetName().
כיצד ניתן להגדיר מספר עבור תא?
שימוש Style::SetNumberFormat(format) לפני שיקראו Cell::SetStyle(style).שורות פורמט עוקבות אחר סינתזה סטנדרטית של מספרים בפורמט Excel.
האם אני יכול להשתמש באותו סגנון למספר תאים?
קבל את הסגנון פעם אחת, לשנות אותו ולאחר מכן להתקשר SetStyle(style) בכל תא היעד.
האם הצורה מוערכת כאשר היא נשמרת?
הערכת טופס מתרחשת ב- Excel או בקורא תואם כאשר הקובץ נפתח.הספרייה כותבת את שורת הטופסה לתוך התא.
כמה שורות ועמדות יכול לעמוד על לוח עבודה?
כל לוח עבודה מחזיק נתונים ברשת המלאה של שורות ועמודים, בהתאם למדדים סטנדרטיים של לוח הפריטים.