開発環境を変更するときの学習コストは、できるだけ抑えたいものです。「Automation Anywhere 開発環境をV11からA2019に変えるときの心構え」では、これまでV11の開発環境を使っていた筆者が、A2019を使い始めて気付いた事を中心に説明しています。
Excelの行を順番に読み取る処理
V11では、Excelの読み取りの際、「Loop for Each row in an Excel dataset」の中で、システム変数「Excel Column」をよく使いました。ところが、A2019では「Excel Column」のようなシステム変数が用意されていません。このためA2019では、いろいろな場面でユーザー定義の変数が必要になります。
このページでは、Excelの行を順番に読み取ってメッセージボックスに表示するBotを例にして、違いを説明します。
このページのBotで読み取るExcelシートの内容は以下の内容です。
■V11の場合
(2)「Get All Cells」の結果は、メモリに取り込まれます。
(3)メモリに取り込まれた値を、「Loop for Each row in an Excel dataset」で1行ずつ読み出します。
(4)処理対象行の判定に、システム変数「Counter」が使えます。
(5)「Loop for Each row in an Excel dataset」のブロック中では、処理中の行の列の値を取得するには、システム変数「Excel Column(列番号)」が使えます。
■A2019の場合
(1)Excelスプレッドシートを開きます。設定内容はV11とほとんど同じですね。
(2)Excelスプレッドシートから複数のセルの値を取得します。取得した行・列の値を格納先として、テーブル型のユーザー変数を指定します。テーブル型のユーザー変数を定義する必要があります。
(3)breakまでループで操作を繰り返します。[Table variable]に、「複数のセルの値の取得」で指定したテーブル型のユーザー変数を、[Assign the current row to this variable]に、レコード型のユーザー変数を指定します。レコード型のユーザー変数を定義する必要があります。
(4)処理対象行の判定のために、Number型のユーザー変数「N_Counter」を定義して使っています。この変数を6行目で初期化、8行目でインクリメントしています。
(5)レコード型の変数から列の値を取得します。レコード型の変数の添字は、0から始まることに注意が必要です。Excelの列番号1, 2の値を取得するときに指定する添字は、それぞれ0, 1になります。
変数の作成(その1)
値を代入する変数を指定する際に、新たな変数を作成することができます。
(2)[名前]を入力して[Create & selct]ボタンをクリックします。
変数の作成(その2)
Botの中で使用する予定の変数を、事前に作成することができます。
(2)[名前]その他を入力して[作成]ボタンをクリックします。