Åtkomst till Cells i ett arbetsblad

Tillgång till Cells

Aspose.Cells tillhandahåller en klassIArbetsbok som representerar en Excel-fil. DeIArbetsbok klass innehåller enArbetsbladsamling som gör det möjligt att komma åt varje kalkylblad i Excel-filen. Ett arbetsblad representeras avIArbetsblad klass. DeIArbetsblad klass ger enCellssamling som representerar alla celler i kalkylbladet.

Vi kan användaCellssamling för att komma åt celler i ett kalkylblad. Aspose.Cells tillhandahåller tre grundläggande metoder för att komma åt celler i ett kalkylblad:

  1. Använder cellnamn.
  2. Använda en cells rad- och kolumnindex.
  3. Använda ett cellindex iCellssamling

Använder Cell Namn

Utvecklare kan komma åt vilken specifik cell som helst genom att skicka dess cellnamn tillCells samling avIArbetsbladklass som ett index.

Om du skapar ett tomt kalkylblad vid start kommer antaletCellssamlingen är noll. När du använder det här tillvägagångssättet för att komma åt en cell, kommer den att kontrollera om denna cell finns i samlingen eller inte. Om ja, returnerar den cellobjektet i samlingen annars skapar den ett nyttICell objekt, lägger till objektet tillCellssamling och returnerar sedan objektet. Detta tillvägagångssätt är det enklaste sättet att komma åt cellen om du är bekant med Microsoft Excel, men det är det långsammaste sättet jämfört med andra metoder.

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

Använda rad- och kolumnindex för Cell

Utvecklare kan komma åt vilken specifik cell som helst genom att skicka indexen för dess rad och kolumn tillCells samling avIArbetsbladklass. Detta tillvägagångssätt fungerar på samma sätt som det första tillvägagångssättet.

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

Få åtkomst till maximalt visningsområde för arbetsblad

Aspose.Cells tillåter utvecklare att komma åt ett kalkylblads maximala visningsområde. Det maximala visningsintervallet - cellintervallet mellan den första och sista cellen med innehåll - är användbart när du behöver kopiera, markera eller visa hela innehållet i ett kalkylblad i en bild.

Du kan komma åt ett kalkylblads maximala visningsområde medMaxDisplayIRange metod förCellssamling.

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