ワークシートのセルへのアクセス
セルへのアクセス
Aspose.CellsはExcelファイルを表すWorkbookクラスを提供します。 Workbookクラスには、Excelファイル内の各ワークシートにアクセスすることを可能にするWorksheetsコレクションが含まれています。ワークシートはWorksheetクラスによって表されます。 Worksheetクラスは、ワークシート内のすべてのセルを表すCellsコレクションを提供しています。
Cellsコレクションを使用してワークシート内のセルにアクセスすることができます。Aspose.Cellsでは、ワークシート内のセルにアクセスするための3つの基本的なアプローチを提供しています:
- セル名を使用します。
- セルの行と列のインデックスを使用します。
- Cellsコレクション内のセルインデックスを使用します。
セル名の使用
開発者は、WorksheetクラスのCellsコレクションにセル名をインデックスとして渡すことで、任意の特定のセルにアクセスできます。
最初に空白のワークシートを作成すると、Cellsコレクションの数はゼロになります。このアプローチを使用してセルにアクセスする場合、このセルがコレクション内に存在するかどうかをチェックします。はいの場合は、コレクション内のセルオブジェクトを返し、さもなければ新しいCellオブジェクトを作成し、そのオブジェクトをCellsコレクションに追加してからそのオブジェクトを返します。このアプローチは、Microsoft Excelに精通している場合にセルにアクセスするための最も簡単な方法ですが、他のアプローチと比較して最も遅いアプローチです。
Aspose::Cells::Startup(); | |
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Path of input | |
U16String dirPath(u""); | |
//Path of output | |
U16String outPath(u""); | |
//Path of input excel file | |
U16String sampleData = dirPath + u"sampleData.xlsx"; | |
//Read input excel file | |
Workbook workbook(sampleData); | |
//Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.GetWorksheets().Get(0); | |
//Get cells from sheet | |
Cells cells = worksheet.GetCells(); | |
//Accessing a cell using its name | |
Cell cell = cells.Get(u"B3"); | |
//Write string value of the cell on console | |
std::cout << "Value of cell B3: " | |
<< cell.GetStringValue().ToUtf8() << std::endl; | |
Aspose::Cells::Cleanup(); |
セルの行と列のインデックスの使用
開発者は、WorksheetクラスのCellsコレクションにセルの行と列のインデックスを渡すことで、任意の特定のセルにアクセスできます。このアプローチは、第1のアプローチと同じ方法で機能します。
Aspose::Cells::Startup(); | |
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Path of input | |
U16String dirPath(u""); | |
//Path of output | |
U16String outPath(u""); | |
//Path of input excel file | |
U16String sampleData = dirPath + u"sampleData.xlsx"; | |
//Read input excel file | |
Workbook workbook(sampleData); | |
//Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.GetWorksheets().Get(0); | |
//Get cells from sheet | |
Cells cells = worksheet.GetCells(); | |
//Accessing cell B3 using its row and column index | |
Cell cell = cells.Get(2, 1); | |
//Write string value of the cell on console | |
std::cout << "Value of cell B3: " | |
<< cell.GetStringValue().ToUtf8() << std::endl; | |
Aspose::Cells::Cleanup(); |
ワークシートの最大表示範囲へのアクセス
Aspose.Cellsを使用すると、開発者はワークシートの最大表示範囲にアクセスできます。最大表示範囲(内容を持つ最初のセルと最後のセルの間のセル範囲)は、ワークシート全体の内容を画像でコピー、選択、表示する必要がある場合に便利です。
ワークシートの最大表示範囲には、Cellsメソッドを使用してアクセスできます。
Aspose::Cells::Startup(); | |
//For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
//Path of input | |
U16String dirPath(u""); | |
//Path of output | |
U16String outPath(u""); | |
//Path of input excel file | |
U16String sampleData = dirPath + u"sampleData.xlsx"; | |
//Read input excel file | |
Workbook workbook(sampleData); | |
//Accessing the first worksheet in the Excel file | |
Worksheet worksheet = workbook.GetWorksheets().Get(0); | |
//Get cells from sheet | |
Cells cells = worksheet.GetCells(); | |
//Access the Maximum Display Range | |
Range range = cells.GetMaxDisplayRange(); | |
//Print string value of the cell on console | |
std::cout << "Maximum Display Range of Worksheet: " | |
<< range.GetRefersTo().ToUtf8() << std::endl; | |
Aspose::Cells::Cleanup(); |