PADアクション:Excelワークシートから読み取る

PAD アクション説明


アクションの概要説明

<span class="red"><span class="blue">Robo2号</span></span>
Robo2号

今回は、「Excelワークシートから読み取る」を説明していきます。このアクションはExcelからデータを取得するアクションなので、Excelを使用するかたは重宝するアクションだと思います。使用頻度も高いと思いますので、基本をしっかり押さえましょう。
「Excelワークシートから読み取る」をする場合、下記のようにアクションを開いてみましょう。

アクションの位置

アクションの展開はアクション名をダブルクリックするか、フロー画面へのドラッグで可能です。

前提条件

このアクションでは、Excelインスタンスを指定して実行します。
よって、「Excelの起動」または「実行中のExcelに添付」のアクションでExcellブックとPADを関連付けておきましょう。「インスタンス」の考え方はリンクでご確認ください。

アクション設定画面(メイン設定)

「Excelワークシートから読み取る」を選択したときは以下の画面となります。
共通な入力国目としては、Excelインスタンスとなりますが、プルダウンで操作したいExcelブックに対応するExcelインスタンスを選択してください。

本アクションの前に、Excelinstanceを1個作っている場合、自動でExcelインスタンスが入力されます。まだExcelインスタンスを作っていない場合、または複数個のExcelインスタンスがある場合は空欄となっています。複数個のExcelインスタンスを作っている場合はプルダウンで選択しましょう。(Excelインスタンスを1個も作っていない場合このアクションの前に作っておきましょう。【エラーとなりアクションが保存できません】)

取得の項でExcelからデータを取得する方法を選択しますが、選択内容によってアクション画面がかわりますので次項でそれぞれを説明させていただきます。

アクション設定画面(単一セルの値)

この項では、取得:の項を「単一セルの値」を選択する時の設定方法を説明します。

赤枠は、エクセルのアクティブシートの「先頭列」と「先頭行」を指定します。
行はエクセルの行を入力し、列はA・B・Cなどの、「A1参照方式」のアルファベットでも、A=1、b=2、C=3とアルファベットを数字に置き換えた数値方式のどちらでも使用できます。

「リンゴ」を数値で指定する場合、以下のように先頭列に「3」(Cの代用)と先頭行に「3」を入力します。

「リンゴ」を「A1形式」で指定する場合、以下のように先頭列に「C」と先頭行に「3」を入力します。

アクションを実行した場合、変数「ExcelData」に「リンゴ」が変数に代入されます。

セルの内容をテキストとして取得は共通項目ですのでこちらで説明します。

アクション設定画面(セル範囲の値)

この項では、「セル範囲の値」を選択する時の設定方法を説明します。

赤枠は、エクセルのアクティブシートの「先頭列」・「先頭行」・「最終列」・「最終行」を指定します。先頭行・最終行はエクセルの行を入力し、先頭列・最終列はA・B・Cといった「A1参照方式」のアルファベットでも、A=1、b=2、C=3とアルファベットを数字に置き換えた数値方式のどちらでも使用できます。

「リンゴ:なし:みかん:ぶどう:オレンジ:すいか」6個のデータすべてエリアで読み取る時、を数値で指定する場合、以下のように先頭列に「3」(Cの代用)・先頭行に「3」・最終列に「4」(Dの代用)・最終行に「5」を入力します。

「リンゴ:なし:みかん:ぶどう:オレンジ:すいか」6個のデータすべてエリアで読み取る時、「A1形式」で指定する場合、以下のように先頭列に「C」・先頭行に「3」・最終列に「D」・最終行に「5」を入力します。

アクションを実行した場合、変数「ExcelData」に範囲のデータが変数にDataTable形式で代入されます。
「範囲の最初の行に列名が含まれています」にチェックを入れた場合、最初業はデーターテーブルの列名に取り込まれます。
セルの内容をテキストとして取得は共通項目ですのでこちらで説明します。

アクション設定画面(選択範囲の値)

この項では、「選択範囲の値」を選択する時の設定方法を説明します。

赤枠は、エクセルのアクティブシートのエクセルのアクティブな選択範囲からデータを取り込むことを指定します。
アクション起動前には、マウス・キーボードで事前に人が選択するか、Excelアクションの「Excelワークシート内のセルを選択」でエクセルのセルを選択しておく必要があります。

アクションを実行した場合、別途あらかじめ指定している選択範囲のデータが変数にDataTable形式で代入されます。
下の左の画面のExcelデータを使用した場合、右の「変数の値」のようにデータが代入されます。
今回「範囲の最初の行に列名が含まれています」にチェックを入れたので、最初の行はデーターテーブルの列名に取り込まれました

セルの内容をテキストとして取得は共通項目ですのでこちらで説明します。

アクション設定画面(ワークシートに含まれる使用可能なすべての値)

この項では、「ワークシートに含まれる使用可能なすべての値」を選択する時の設定方法を説明します。

赤枠は、Excelのアクティブシートのすべてのデータを取り込むことを指定します。
アクションを実行した場合、全範囲のデータが変数にDataTable形式で代入されます。

その他の設定は、他の選択項目と同じで特別な設定はありません。

アクション設定画面(名前付きセルの値)

この項では、「名前付きセルの値」を選択する時の設定方法を説明します。


名前付きセルについては、Excelの機能でありますので詳細内容は、こちら公式リンクをご覧ください。

名前付きセルが設定された範囲のデータが数にDataTable形式で代入されます。
ただし、この項目には、「右側の空の列と末尾の空の行を削除する」選択があるので、これを選択することで、不要な空欄がないデータの取得が可能となります。

その他の設定は他の選択項目と同じで特別な設定はありません。

共通項目(Excelワークシートから読み取る)

「セルの内容をテキストとして取得する」について解説します。(全取得選択共通)

チェックを入れない(初期値はOFF)と取り込んだデータをPADが自動判定して変数の形式を自動で判別します。
ほとんどの場合問題ありませんが、「1」・「2025/4/5」といったデータを変数を取り込む場合、チェックを入れずに取り込むと数値や日付形式で保存されます。場合によってはすべてテキスト形式で取り込みたい場合が発生すると思います。この場合、以下のチェックをONして取り込んでください。

使用上の注意事項

本アクションのエラーのほとんどは設定時に対象のインスタンス・ファイルが見つからない場合などがほとんどだと思われます。本アクション外の事前準備も重要ですのでフロー作成時はご注意ください。

Robo1号の感想

<span class="red">Robo1号</span>
Robo1号

Excelワークシートからデータを読み取る方法はいろいろあるんだね。慣れるまでは、「単一セルの値」や「セル範囲の値」を使うのがよさそうだね。慣れてくると詳細オプションで自分の扱いやすいデータで取得できるから、効率的にExcelからデータが取得できるね。多くの場合はデータテーブルに取り込むことになりそうなのでデータテーブル変数の使い方も勉強していきたいな。


タイトルとURLをコピーしました