Excelファイルからデータを 読み込むには

Excelデータの取得

Excel ワークシートからデータを取得し、フロー内へ読み込むには、ExcelPOIInput コンポーネン トを利用します。Excel のアドオンソフトである Excel ビルダーを起動して、データ範囲やフィー ルドを指定し、マッピングで出力ストリームを設定します。

 

Excel データ読み込みのフローを 作成する

1.「ファイル」タブから FileGet コンポーネント  (「ファイルを読み込みます」)を配置し、対象のExcel ファイルへのファイルパスを指定して、 ストリーム型を「Binary」に変換する

  

HINT
手順2で「ストリーム定義を Binary に変換します」という確認画面が表示されたら「はい」をクリックして閉じてください。
Excelデータを読み込むExcelInputコンポーネントには、「ExcelPOIInput」(POI バージョン)と「ExcelInput」の2種類がありますが、ExcelPOIInput の使用が推奨されています。

2. パレットの「Excel」タブをクリックし、ExcelPOIInputコンポーネント(「Excelファイルからデータを読み込みます(POI バージョン)」)をドラッグして配置する

3.必要に応じてその他のコンポーネントを配置し、接続する

 

Excel ビルダーを起動しデータ範囲を指定する
1. 配置したExcelPOIInputコンポーネントをダブルクリックする


 

2. セキュリティに関する通知のダイアログで「マクロを有効にする」をクリックして Excel を起動する

 

HINT
データ領域の指定
手順3では、Excel ビルダーでワークシートのデータ領 域を指定するためのファイル(実データファイル、もしくはデータ領域のテンプレートとしたい任意の Excel ファイル)を開きます。テンプレートのファイル名は実データファイルと異なっていてもかまいませんが、シート名に ついては、テンプレートと実データファイルの双方で同じシート名にしておきます。または、ExcelPOIInput コン ポーネントの「シート」タブの「読み込むシート名」プロパティで、実際に読み込むワークシート名を指定します。

3. Excelが起動するので、データ領域を指定するための Excel ファイルを開く

 

4. Excelで読み込んだファイルが表示されるので、「FlowDesigner」タブをクリックする

5. 「ExcelBuilder」アイコンをクリックしてExcelビルダーを起動する

 

CAUTION
ここではExcel 2016の画面で操作方法を説明しています。 Excel のバージョンによっても操作方法は異なります。

 

6. Excelビルダーの「レコード」タブの「追加」をクリックする

7. 表示される「範囲指定」ダイアログにデータ範囲を指定し、「OK」をクリックする

 

8.「レコード名入力」ダイアログにレコード名 (任意の名前)を入力し、「OK」をクリックする

HINT
Excel ビルダーでは、データ領域を指定する際にワークシートをドラッグして範囲指定するため、データ領域を隠さないように、Excel ビルダーの表示位置を少しずらしておくとよいでしょう。
7の「範囲指定」ダイアログでは、Excel ワークシートのデータ範囲をドラッグして指定したあとに、必要に応じて編集します。ExcelPOIInputやExcelPOIOutputの処理では、ここで指定した領域の範囲内でデータが取得または更新されるので、実データが入力される最大範囲を指定しておきましょう。

 

9.「レコード行数 クリックする 入力」ダイアログで1レコード の行数を指定 し、「OK」をクリックする

10.Excelビルダーに戻るので、指定したレコード範囲をクリックすると、下の「レコードフィー ルド」欄にフィールド情報が表示される

 

11.「フィールド名取得」をクリックし、表示される「範囲指定」ダイアログでフィールド名の範囲を指定して、「OK」をクリックする

 HINT
「範囲指定」ダイアログでは、Excelワークシート上の データ範囲やフィールド名範囲をドラッグすることで、 範囲指定の操作ができます。

 

12. 「登録」をクリックして、追加したレコード範囲を登録する

  

確認のダイアログで「OK」をクリックすると、Excel ビルダーのダイアログが閉じられます。Excelファイルを閉じて Excel を終了すると、フローデザイナーの画面に戻ります。

 

CAUTION
Excel ビルダーで設定を変更したら、ダイアログを閉じる前に、必ず「登録」ボタンをクリックして終了してください。「閉じる」ボタンで終了すると、設定内容は保存されません。

HINT
フィールド名を個別に設定するには
Excel ビルダーの「レコードフィールド」の一覧で対象のフィールドを選択し、「変更」をクリックします。「名前入力」ダイアログが表示されるので、フィールド名を入力し、「OK」をクリックします。

レコード終了条件を設定するには
フィールドを個別に設定する場合、レコードの終了条件 を指定するかどうかの確認ダイアログが表示されます。 終了条件を指定しない場合、指定範囲内の最後のレコードまで読み取りが行われますが、終了条件を指定することで、特定のフィールド(列)が特定の値(空 欄指定も可)に来たところでレコードの読み 取りが終了されるように設定できます。

 

Excel データのマッピングを指定する

1. ExcelPOIInputコンポーネントを選択し、ストリームペインでフィールド定義が設定されていることを確認して、必要に応じデータ型を変更する


2. 出力ストリームに合わせて、Mapperコンポーネントのストリーム定義を設定する


3. 処理に合わせてマッピング設定を行う

Excel ビルダーで指定したデータ範囲のデータをマッピングすることで、ストリームとして出力できます。

この記事は役に立ちましたか?
0人中0人がこの記事が役に立ったと言っています
    キーワード:
他にご質問がございましたら、リクエストを送信してください

このセクションの記事

他のキーワードで検索する