セルからテーブルにアクセスし、行と列のオフセットを使用して値を追加する
通常、テーブルまたはリストオブジェクト内に値を追加する場合は Cell.PutValue() メソッドを使用します。ただし、時々、行と列のオフセットを使用してテーブルまたはリストオブジェクト内に値を追加する必要があることがあります。
セルからテーブルまたはリストオブジェクトにアクセスするには、Cell.GetTable() メソッドを使用します。行と列のオフセットを使用してその内部に値を追加するには、ListObject.PutCellValue メソッドを使用します。
以下のスクリーンショットは、コード内で使用されるソースエクセルファイルを示しています。空のテーブルが含まれ、テーブル内にあるセル D5 が強調表示されています。このテーブルにセル D5 から Cell.GetTable() メソッドを使用してアクセスし、その後、Cell.PutValue() および ListObject.PutCellValue メソッドを使用してその内部に値を追加します。
例
ソースファイルと出力ファイルの比較のスクリーンショット
![]() |
---|
以下のスクリーンショットは、コードによって生成された出力エクセルファイルを示しています。セル D5 に値が設定されており、テーブル内のオフセット 2,2 のセル F6 にも値が設定されています。
![]() |
---|
セルからテーブルにアクセスし、行と列のオフセットを使用して値を追加するC#コード
以下のサンプルコードは、上記のスクリーンショットに示されているソースエクセルファイルを読み込み、テーブル内に値を追加し、それに基づいて出力エクセルファイルを生成します。
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-.NET | |
// The path to the documents directory. | |
string dataDir = RunExamples.GetDataDir(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType); | |
// Create workbook from source Excel file | |
Workbook workbook = new Workbook(dataDir + "source.xlsx"); | |
// Access first worksheet | |
Worksheet worksheet = workbook.Worksheets[0]; | |
// Access cell D5 which lies inside the table | |
Cell cell = worksheet.Cells["D5"]; | |
// Put value inside the cell D5 | |
cell.PutValue("D5 Data"); | |
// Access the Table from this cell | |
ListObject table = cell.GetTable(); | |
// Add some value using Row and Column Offset | |
table.PutCellValue(2, 2, "Offset [2,2]"); | |
// Save the workbook | |
workbook.Save(dataDir + "output_out.xlsx"); |