Доступ к Cells рабочего листа
Доступ Cells
Aspose.Cells предоставляет классIWorkbook который представляет файл Excel.IWorkbook класс содержитРабочие листыколлекция, которая позволяет получить доступ к каждому рабочему листу в файле Excel. Рабочий лист представленрабочий лист учебный класс.рабочий лист класс предоставляетCellsколлекция, представляющая все ячейки рабочего листа.
Мы можем использоватьCellsколлекция для доступа к ячейкам на листе. Aspose.Cells предоставляет три основных подхода к доступу к ячейкам на листе:
- Использование имени ячейки.
- Использование индекса строки и столбца ячейки.
- Использование индекса ячейки вCellsколлекция
Использование имени Cell
Разработчики могут получить доступ к любой конкретной ячейке, передав имя ее ячейки вCells коллекциярабочий листкласс в качестве индекса.
Если вы создаете пустой рабочий лист в начале, количествоCellsсбор нулевой. Когда вы используете этот подход для доступа к ячейке, он проверяет, существует ли эта ячейка в коллекции или нет. Если да, он возвращает объект ячейки в коллекции, в противном случае он создает новыйICell объект, добавляет объект вCellscollection, а затем возвращает этот объект. Этот подход — самый простой способ доступа к ячейке, если вы знакомы с Microsoft Excel, но он самый медленный по сравнению с другими подходами.
//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()); |
Использование индекса строк и столбцов Cell
Разработчики могут получить доступ к любой конкретной ячейке, передав индексы ее строки и столбца вCells коллекциярабочий листучебный класс. Этот подход работает так же, как и первый подход.
//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()); |
Доступ к максимальному диапазону отображения рабочего листа
Aspose.Cells позволяет разработчикам получить доступ к максимальному диапазону отображения рабочего листа. Максимальный диапазон отображения — диапазон ячеек между первой и последней ячейкой с содержимым — полезен, когда вам нужно скопировать, выбрать или отобразить все содержимое рабочего листа на изображении.
Вы можете получить доступ к максимальному диапазону отображения рабочего листа, используяMaxDisplayIRange методCellsколлекция.
//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()); |