Zugriff auf Cells eines Arbeitsblatts

Zugriff auf Cells

Aspose.Cells bietet eine KlasseIWorkbook die eine Excel-Datei darstellt. DasIWorkbook Klasse enthält aArbeitsblätterSammlung, die den Zugriff auf jedes Arbeitsblatt in der Excel-Datei ermöglicht. Ein Arbeitsblatt wird durch dargestelltIArbeitsblatt Klasse. DasIArbeitsblatt Klasse bietet aCellsAuflistung, die alle Zellen im Arbeitsblatt darstellt.

Wir können benutzenCellsSammlung, um auf Zellen in einem Arbeitsblatt zuzugreifen. Aspose.Cells bietet drei grundlegende Ansätze für den Zugriff auf Zellen in einem Arbeitsblatt:

  1. Zellname verwenden.
  2. Verwenden des Zeilen- und Spaltenindex einer Zelle.
  3. Verwenden eines Zellenindex in derCellsSammlung

Verwendung des Namens Cell

Entwickler können auf jede bestimmte Zelle zugreifen, indem sie ihren Zellennamen an die übergebenCells Sammlung derIArbeitsblattKlasse als Index.

Wenn Sie zu Beginn ein leeres Arbeitsblatt erstellen, wird die Anzahl vonCellsSammlung ist null. Wenn Sie diesen Ansatz verwenden, um auf eine Zelle zuzugreifen, wird überprüft, ob diese Zelle in der Sammlung vorhanden ist oder nicht. Wenn ja, gibt es das Zellobjekt in der Sammlung zurück, andernfalls erstellt es ein neuesICell Objekt, fügt das Objekt dem hinzuCellsSammlung und gibt dann dieses Objekt zurück. Dieser Ansatz ist der einfachste Weg, um auf die Zelle zuzugreifen, wenn Sie mit Microsoft Excel vertraut sind, aber im Vergleich zu anderen Ansätzen ist er der langsamste.

//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
//Path of input excel file
StringPtr sampleData = dirPath->StringAppend(new String("sampleData.xlsx"));
//Read input excel file
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(sampleData);
//Accessing the first worksheet in the Excel file
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
//Get cells from sheet
intrusive_ptr<ICells> cells = worksheet->GetICells();
//Accessing a cell using its name
intrusive_ptr<ICell> cell = cells->GetObjectByIndex(new String("B3"));
//Write string value of the cell on console
Console::Write(new String("Value of cell B3: "));
Console::WriteLine(cell->GetStringValue());

Verwenden des Zeilen- und Spaltenindex von Cell

Entwickler können auf jede bestimmte Zelle zugreifen, indem sie die Indizes ihrer Zeile und Spalte an die übergebenCells Sammlung derIArbeitsblattKlasse. Dieser Ansatz funktioniert genauso wie der erste Ansatz.

//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
//Path of input excel file
StringPtr sampleData = dirPath->StringAppend(new String("sampleData.xlsx"));
//Read input excel file
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(sampleData);
//Accessing the first worksheet in the Excel file
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
//Get cells from sheet
intrusive_ptr<ICells> cells = worksheet->GetICells();
//Accessing cell B3 using its row and column index
intrusive_ptr<ICell> cell = cells->GetObjectByIndex(2, 1);
//Write string value of the cell on console
Console::Write(new String("Value of cell B3: "));
Console::WriteLine(cell->GetStringValue());

Zugriff auf den maximalen Anzeigebereich des Arbeitsblatts

Aspose.Cells ermöglicht Entwicklern den Zugriff auf den maximalen Anzeigebereich eines Arbeitsblatts. Der maximale Anzeigebereich – der Zellbereich zwischen der ersten und der letzten Zelle mit Inhalt – ist nützlich, wenn Sie den gesamten Inhalt eines Arbeitsblatts in einem Bild kopieren, auswählen oder anzeigen müssen.

Mit können Sie auf den maximalen Anzeigebereich eines Arbeitsblatts zugreifenMaxDisplayIRange Methode derCellsSammlung.

//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C
//Path of input excel file
StringPtr sampleData = dirPath->StringAppend(new String("sampleData.xlsx"));
//Read input excel file
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(sampleData);
//Accessing the first worksheet in the Excel file
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
//Get cells from sheet
intrusive_ptr<ICells> cells = worksheet->GetICells();
//Access the Maximum Display Range
intrusive_ptr<IRange> range = cells->GetMaxDisplayIRange();
//Print string value of the cell on console
Console::Write(new String("Maximum Display Range of Worksheet: "));
Console::WriteLine(range->GetRefersTo());