सेल और डेटा मॉडल के साथ काम करना
सेल और डेटा मॉडल के साथ काम करना
के लिए Cell क्लास पढ़ने और लिखने के लिए प्राथमिक इंटरफ़ेस है व्यक्तिगत स्पेयरबोर्ड सेल मूल्यों, सूत्रों और शैलियों. कार्यबोध के माध्यम से एक सेट तक पहुंचें Cells एक पते के साथ एक संदेश का उपयोग करें।.
कोशिकाओं के लिए मूल्य लिखना
उपयोग करें Cell::PutValue पाठ, संख्याओं, बोलेन या तारीखों को एक सेल में लिखने के लिए:
#include "aspose/cells_foss/Workbook.h"
#include "aspose/cells_foss/Worksheet.h"
#include "aspose/cells_foss/Cell.h"
using namespace Aspose::Cells_FOSS;
int main() {
Workbook workbook;
Worksheet& sheet = workbook.GetWorksheets()[0];
sheet.GetCells()["A1"].PutValue("Product");
sheet.GetCells()["B1"].PutValue("Price");
sheet.GetCells()["A2"].PutValue("Widget");
sheet.GetCells()["B2"].PutValue(9.99);
sheet.GetCells()["C2"].PutValue(true);
workbook.Save("data.xlsx");
return 0;
}फार्मूला बनाएं
उपयोग करें Cell::SetFormula(formula) Excel-सामग्री सूत्र लिखने के लिए. फ़ाइल खोलने पर, Excel या संगत पाठकों द्वारा सूक्ष्मों का मूल्यांकन किया जाता है.
sheet.GetCells()["B4"].SetFormula("=SUM(B2:B3)");
sheet.GetCells()["C4"].SetFormula("=AVERAGE(B2:B3)");पढ़ने के लिए सेल मूल्य
एक सेल के वर्तमान मूल्य को पढ़ें Cell::GetValue(),जिसके बाद वापस लौटें CellValue एक विशिष्ट प्रकार में परिवर्तित करें, उचित उपकरण का उपयोग करके:
CellValue val = sheet.GetCells()["B2"].GetValue();
double price = val.AsDouble();
std::string text = sheet.GetCells()["A2"].GetStringValue();के लिए CellValue क्लास टाइप किए गए सामान प्रदान करता है:
| Method | वापसी प्रकार |
|---|---|
AsDouble() | double |
AsInteger() | int |
AsBool() | bool |
AsString() | std::string |
AsDateTime() | DateTime |
रॉ और स्तंभ द्वारा एक्सेस कोशिकाओं
संदर्भ श्रृंखलाओं के अलावा, एक्सेस कोशिकाएं शून्य-आधारित पंक्तियों और स्तंभ सूचकांक द्वारा:
// Address string
Cell& cellA1 = sheet.GetCells()["A1"];
// Row/column index (0-based)
int row = cellA1.GetRow();
int col = cellA1.GetColumn();चमकदार कोशिकाएं
उपयोग करें Cells::Merge एक कोशिकाओं के रेटिंग श्रृंखला को एक में जोड़ने के लिए:
CellArea area = CellArea::CreateCellArea("A1", "C1");
sheet.GetCells().Merge(area.StartRow, area.StartColumn,
area.EndRow - area.StartRow + 1,
area.EndColumn - area.StartColumn + 1);प्रदर्शित पाठ प्राप्त करें
सेल मूल्य को प्रारूपित प्रदर्शनी पाठ के रूप में वापस लेने के लिए (अंक स्वरूपों का उपयोग), उपयोग करें Cell::GetDisplayStringValue():
std::string display = sheet.GetCells()["B2"].GetDisplayStringValue();टिप्स और सर्वश्रेष्ठ अभ्यास
- Prefer
PutValueपरेSetValueसीधे लिखित कार्यों के लिए -PutValueसभी प्राचीन प्रकारों के लिए अतिरंजित है।. - उपयोग करें
GetStringValue()बिना टाइप रूपांतरण के पाठ प्राप्त करने के लिए; उपयोग करेंGetValue().AsDouble()जब आपको संख्यात्मक सटीकता की आवश्यकता होती है।. - हमेशा कॉल करें
SetFormulaफार्मूला सेल के लिए, नहींPutValue("=SUM(...)")- यह एक सारांश है, एक सूत्र नहीं।. - उपयोग करें
CellArea::CreateCellArea(start, end)मिश्रण और प्रारूपण संचालन के लिए रेंज वस्तुओं का निर्माण करने के।.
सामान्य मुद्दे
| Issue | Cause | फिक्स करें |
|---|---|---|
GetValue() खाली लौटें | सेल नहीं लिखा गया है। | एक मूल्य के साथ लिखें PutValue पढ़ने से पहले |
| नहीं की गई सूत्र | स्ट्रिंग के रूप में संरक्षित सूत्र | उपयोग करें SetFormula(expr) इसके बजाय PutValue(expr) |
| विफलताओं में मिश्रण | अभावित आयामों का आकार | Ensure endRow >= startRow और endColumn >= startColumn |
| पढ़ने में गलतफहमी | गलत बुलाना As*() विधि | मूल के साथ उपकरण को संरेखित करें PutValue प्रकार |
API संदर्भ सारांश
| वर्ग / विधि | Description |
|---|---|
Cell::PutValue(value) | सेल में एक सार्थक मूल्य लिखें |
Cell::SetFormula(formula) | Excel Formula String सेट करें |
Cell::GetValue() | एक के रूप में सेल मूल्य को पुनर्स्थापित करें CellValue |
Cell::GetStringValue() | एक श्रृंखला के रूप में सेल मूल्य को पुनर्स्थापित करें |
Cell::GetDisplayStringValue() | प्रारूपित डिस्प्ले श्रृंखला को पुनर्स्थापित करें |
Cell::GetRow() | 0-आधारित रैखिक इंडेक्स प्राप्त करें |
Cell::GetColumn() | 0-आधारित स्तंभ सूचकांक प्राप्त करें |
Cell::GetStyle() | वर्तमान सेल शैली प्राप्त करें |
Cell::SetStyle(style) | सेल पर एक संशोधित शैली लागू करें |
CellValue::AsDouble() | सेल मूल्य को डबल में परिवर्तित करें |
CellValue::AsString() | सेल मूल्य को स्ट्रिंग में परिवर्तित करें |
Cells::Merge(row, col, rows, cols) | एक रेटिंग रिम पर ले जाएं |