ワークシートにデータをインポート
ワークシートにデータをインポートする方法
Aspose.CellsでExcelファイルを開くと、ファイル内のすべてのデータが自動的にインポートされます。 Aspose.Cellsは他のデータソースからもデータをインポートできます。
Aspose.CellsはMicrosoft Excelファイルを表すWorkbookクラスを提供します。WorkbookクラスにはExcelファイルの各ワークシートにアクセスするためのWorksheetsコレクションが含まれています。ワークシートはWorksheetクラスによって表されます。WorksheetクラスはCellsコレクションを提供します。Cellsコレクションにはさまざまなデータソースからデータをインポートするための便利なメソッドが用意されています。この記事では、これらのメソッドの使用方法について説明します。
ICellsDataTableインターフェイスを使用してExcelにデータをインポートする方法
ICellsDataTableを実装してさまざまなデータソースをラップし、Cells.ImportData()を使用してExcelワークシートにデータをインポートします。
サンプルコード
CustomerDataSource, Customer, CustomerList クラスの実装は以下のとおりです
配列からExcelにデータをインポートする方法
配列からスプレッドシートにデータをインポートするには、ImportArrayコレクションのCellsメソッドを呼び出します。ImportArrayメソッドには多くのオーバーロードバージョンがありますが、典型的なオーバーロードでは次のパラメータが必要です:
- Array、インポート元の配列オブジェクト。
- 行番号、データがインポートされる最初のセルの行番号。
- 列番号、データがインポートされる最初のセルの列番号。
- 垂直、データを垂直または水平にインポートするかどうかを指定するブール値。
配列リストからExcelにデータをインポートする方法
ArrayListからワークシートにデータをインポートするには、CellsコレクションのImportArrayListメソッドを呼び出します。ImportArrayメソッドには次のパラメータが必要です:
- ArrayList、インポート元のArrayListを表す。
- 行番号、データがインポートされる最初のセルの行番号を表す。
- 列番号、データがインポートされる最初のセルの列番号を表す。
- 垂直、データを垂直または水平にインポートするかどうかを指定するブール値。
カスタムオブジェクトからExcelにデータをインポートする方法
オブジェクトのコレクションからワークシートにデータをインポートするには、ImportCustomObjectsを使用します。表示する希望のオブジェクトのリストをメソッドに提供します。
カスタムオブジェクトからExcelにデータをインポートし、マージされたエリアをチェックする方法
オブジェクトのコレクションからマージされたセルを含むワークシートにデータをインポートするには、ImportTableOptions.CheckMergedCellsプロパティを使用します。Excelテンプレートにマージされたセルがある場合は、ImportTableOptions.CheckMergedCellsプロパティの値をtrueに設定します。メソッドに表示する希望のオブジェクトのリストとともにImportTableOptionsオブジェクトを渡します。次のコードサンプルは、ImportTableOptions.CheckMergedCellsプロパティを使用してカスタムオブジェクトからマージされたセルにデータをインポートする方法を示しています。参考のために添付のソースExcelファイルと出力Excelファイルをご覧ください。
ExcelからDataTableにデータをインポートする方法
DataTableからデータをインポートするには、CellsコレクションのImportDataTableメソッドを呼び出します。ImportDataTableメソッドにはオーバーロードされたバージョンが多数ありますが、典型的なオーバーロードは次のパラメータを取ります:
- Data table: インポート元のDataTableオブジェクト。
- フィールド名の表示: DataTableの列名をワークシートに最初の行としてインポートするかどうかを指定します。
- 開始セル: DataTableの内容をインポートする開始セルの名前 (例: “A1”) を表します。
Excelから動的オブジェクトをデータソースとしてデータをインポートする方法
Aspose.Cellsは、動的オブジェクトをデータソースとして使用する機能を提供しています。そこでは、プロパティがオブジェクトに動的に追加されます。プロパティがオブジェクトに追加された後、Aspose.Cellsは最初のエントリをテンプレートとして扱い、それ以降に応じて処理します。つまり、最初のアイテムのみに動的プロパティが追加され、他のオブジェクトには追加されていない場合、Aspose.Cellsはコレクション内のすべてのアイテムが同じであると見なします。
この例では、最初は2つの変数のみを含むテンプレートモデルが使用されています。このリストは動的オブジェクトのリストに変換されます。その後、追加のフィールドが追加され、最後にワークブックにロードされます。ワークブックはテンプレートXLSXファイル内の値のみを取得します。このテンプレートワークブックにはパラメータを含むスマートマーカーが使用されています。パラメータを使用すると、情報の配置方法を変更できます。スマートマーカーの詳細については、次の記事から取得できます:
DataColumnをExcelにインポートする方法
A DataTableまたはDataViewオブジェクトは1つ以上の列で構成されています。開発者は、DataTableまたはDataViewの列/列からデータをインポートするために、CellsコレクションのImportDataメソッドを呼び出すこともできます。ImportDataメソッドはImportTableOptions型のパラメータを受け入れます。ImportTableOptionsクラスはColumnIndexesプロパティを提供し、列のインデックスの配列を受け入れます。
以下に示すサンプルコードは、ImportTableOptions.ColumnIndexesの使用を示しています。
DataViewをExcelにインポートする方法
DataViewからデータをインポートするには、CellsコレクションのImportDataメソッドを呼び出します。ImportDataメソッドにはオーバーロードされたバージョンが多数ありますが、DataView用の典型的なオーバーロードは次のパラメータを取ります:
- DataView: インポート元のDataView オブジェクト。
- 最初の行: データがインポートされる最初のセルの行番号。
- 最初の列: データがインポートされる最初のセルの列番号。
- ImportTableOptions: インポートオプション。
DataGridをExcelにインポートする方法
DataGridからデータをインポートすることができます。その際には、CellsコレクションのImportDataGridメソッドを呼び出します。ImportDataGridメソッドには多数のオーバーロードバージョンがありますが、典型的なオーバーロードは次のパラメータを取ります:
- Data grid: インポート元のDataGrid オブジェクト。
- Row Number: データがインポートされる最初のセルの行番号。
- Column Number: データがインポートされる最初のセルの列番号。
- Insert Rows: データを格納するためにワークシートに余分な行を追加するかどうかを示すブール値。
GridViewをExcelにインポートする方法
GridView コントロールからデータをインポートするには、CellsコレクションのImportGridViewメソッドを呼び出します。
Aspose.Cellsを使用すると、データをスプレッドシートにインポートする際にHTML形式の値を正しく解釈することができます。HTMLの解析を有効にしてデータをインポートすると、Aspose.CellsはHTMLを対応するセルの書式設定に変換します。
ExcelにHTML形式のデータをインポートする方法
Aspose.Cellsは、外部データソースからデータをインポートするための非常に有用なメソッドを提供するCells クラスを提供しています。この記事では、データをインポートする際にHTML形式のテキストを解析し、HTMLを書式設定されたセルの値に変換する方法を示します。
JSONからExcelにデータをインポートする方法
Aspose.Cellsは、JSONを処理するためのJsonUtilityクラスを提供しています。JsonUtilityクラスには、JSONデータをインポートするためのImportDataメソッドがあります。Aspose.Cellsは、JSONレイアウトのオプションを表すJsonLayoutOptionsクラスも提供しています。ImportDataメソッドは、パラメータとしてJsonLayoutOptionsを受け入れます。JsonLayoutOptionsクラスには、以下のプロパティが用意されています。
- ArrayAsTable:配列内の処理がテーブルとして行われるかどうかを示します。
- ConvertNumericOrDate:JSON内の文字列を数値または日付に変換するかどうかを取得または設定します。
- DateFormat:日付値の形式を取得および設定します。
- IgnoreArrayTitle:オブジェクトのプロパティが配列の場合に、タイトルを無視するかどうかを示します。
- IgnoreNull:null値を無視するかどうかを示します。
- IgnoreObjectTitle:オブジェクトのプロパティがオブジェクトの場合に、タイトルを無視するかどうかを示します。
- NumberFormat:数値値の形式を取得および設定します。
- TitleStyle:タイトルのスタイルを取得および設定します。
以下のサンプルコードは、JsonUtilityおよびJsonLayoutOptionsクラスを使用してJSONデータをインポートする方法を示しています。