はじめに
以下のような表を Automation Anywhere の Automation360 で扱う際、「商品名」「単価」のようなExcelデータ内の列名を使ってデータを取得する方法を説明します。
やりかた
0.前提
前提として、今回は以下のような処理の流れ(開く→ループで全行を処理→閉じる)において、ループの中でデータを扱う場合についての説明となります。
1.「Excelを開く」のアクションでやること
「Excelを開く」のアクションでは、画面右側のプロパティで「シートにヘッダーを含む」にチェックを入れておきます。
そうすると、データの1行目を列名として使えるようになります。
なお、この指定はExcelの基本操作・高度な操作どちらでもできます。
※ 基本操作って何? 高度な操作って何? という方は こちらの記事 をご参照ください。
2. データを取り出すときにやること
ループ処理の中でデータを取り出すときには、下記①②の方法があります。
(どちらのやりかたでやっても、結果は同じです)
① 初心者向け:入力補助を使う方法
② 慣れた人向け:変数を直接指定する方法
入力補助を使うのが面倒な人は、$レコード変数名{"Excelの列名"}$
の要領で、変数を直接書き込むこともできます。
①の方法も、結果的に上記のような形で変数を書き込むために入力補助を使っているだけです。
よくある質問
Q.「シートにヘッダーを含む」機能が使えるのは、ヘッダーとなる列名が1列目にあるときだけですか?
A.そんなことはありません。
以下の方法で、任意の行を列名として使うことができます。
- Excelを開くアクションで、「シートにヘッダーを含む」を選択しておく(ヘッダーが1列目にあるときと同様)
- ループのアクションで、列名として使いたい範囲を含む範囲をループの範囲に指定する
例えば、以下のような要領です。
まとめ
以下の方法を使うことで、Excelの中の列名をデータ取得時の指定に使うことができます。
- Excelの「開く」アクションで「シートにヘッダーを含む」にチェックを入れておく
- 入力補助、もしくは直接指定で
$レコード変数名{"Excelの列名"}$
を指定する
Automation360の便利な機能のひとつですので、ぜひ使ってみてください!