Automation Anywhere A360を使ってBotを作ってみよう!というこのシリーズ、
前回からRPA Hackathonへの登録Bot作成をご紹介してます。
今回はExcelファイルから取得した値を画面項目に入力させる部分を作っていきたいと思います。
※本記事はAutomation 360 v.23 (Build 11513) 時点での情報です。
目次
1. どんなBotを作るのか
1-1. Excelファイルを扱うアクションパッケージ
1-2. Botのコピー
2. 「Excelの基本操作」アクションの追加
2-1. 「Excelの基本操作:開く」アクション
2-2. 「Excelの基本操作:複数のセルを取得」アクション
2-3. 「Excelの基本操作:閉じる」アクション
3. 「レコーダー:キャプチャ」アクションの設定変更
3-1. [キーボード操作]の値を差し替え
3-2. テスト実行
4.まとめ
1. どんなBotを作るのか
前回ご紹介した通り、今作っているBotは以下のようなものになります。
【手動】RPA Hackathonの「LEVEL1」へアクセス
【手動】[Select a RPA Tool]で「Automation Anywhere」を選択
【手動】[Download CSV]ボタンをクリックしてCSVファイルを入手
【手動】[Start]ボタンをクリック
【Bot】CSVファイルのデータを1行分取得
【Bot】データを画面の該当項目へ入力
【Bot】[Submit]ボタンをクリック
※データの件数分繰り返す
ただし、今回は勉強のため、入手したCSVを手動でExcelに変換してからBotを実行させ、
画面へ登録させたいと思います。
1-1. Excelファイルを扱うアクションパッケージ
Automation 360には、Excelファイルを扱うアクションパッケージが3つあります。
・Excelの基本操作
・Excelの高度な操作
・Office 365 Excel
「Excelの基本操作」パッケージは、Botを実行するデバイスに
Microsoft Office Excelがインストールされていなくても使用できます。
その代わり、できる操作が限定されています。
今回のBotではこちらのアクションでBotを作っていきます。
製品ドキュメント > Excel basic package
C&S ENGINEER VOICE > 【A360】【パッケージリファレンス】Excelの基本操作 vol.1
(開く/閉じる/1つのセルを取得/複数のセルを取得)
複雑な操作をしたい場合は「Excelの高度な操作」パッケージを使います。
Botを実行するデバイスにExcelがインストールされていないと使用できません。
製品ドキュメント > Excel advanced package
MicrosoftのクラウドサービスでExcelを使用している場合は、
「Office 365 Excel」パッケージを使用します。
製品ドキュメント > Office 365 Excel package
ちなみにCSVファイルの場合は、「CSV/TXT」パッケージでもできますし、
「Excelの高度な操作」パッケージでもできます。
製品ドキュメント > CSV/TXT package
C&S ENGINEER VOICE > 【A2019】【パッケージリファレンス】CSV/TXT
C&S ENGINEER VOICE > 【A2019】データソースを使う(CSV 編)
1-2. Botのコピー
今回は「Excelの基本操作」パッケージを使ってみようと思います。
次回は「Excelの高度な操作」パッケージを使った場合をご紹介する予定ですので、
前回作成したBotをコピーして、別々のBotが作れるよう準備しておきましょう。
余裕のある方はもう1つコピーして「CSV/TXT」パッケージを使ったバージョンも作ってみてください。
実行速度など比較してみるのも面白いと思います。
Botをコピーするには、Botの一覧画面で、
該当Botの右端メニューから[タスク Botをコピー]をクリックし、
表示される子画面で新しいBotの[名前]と[フォルダー]を指定して
[コピー]ボタンをクリックするだけです。
2. 「Excelの基本操作」アクションの追加
事前に、前回ダウンロードしたCSVファイルをExcelファイルに変換して、
Clientデバイス内の適当なローカルフォルダに置いておいてください。
2-1. 「Excelの基本操作:開く」アクション
「開始」のすぐ後へ、「Excelの基本操作:開く」アクションを配置します。
以下を設定してBotを保存します。
ファイル パス:「デスクトップ ファイル」を選択した後、rpa_hackathon.xlsxのフルパスを設定
シートにヘッダーを含む:見出しありのファイルなので、チェックON
特定のシート名:1シートしかないファイルなので、チェックOFF
指定のアプリケーションで開く:特に編集はしないので、「読み取り専用モード」を選択
パスワードが必要です:特に設定されていないので、チェックOFF
セッション名:1ファイルしか使わないので、「Default」のままで
2-2. 「Excelの基本操作:複数のセルを取得」アクション
次に、すぐ下に「Excelの基本操作:複数のセルを取得」アクションを配置します。
以下を設定してBotを保存します。
ループ範囲:「すべての行」を選択
セッション名:「Default」のままで
値を変数に代入:右端の[変数を作成]アイコンから変数を作成します。
画面項目に書いてある通り、[値を変数に代入]は任意設定項目になりますので、
ここを使わない方法もありますが、今回はこちらを使用する方法で進めたいと思います。
変数のデータ型[タイプ]は「テーブル」が選択され、変更できないようになっていますので、
そのままで、[名前]を設定したら[作成して選択]ボタンをクリックするだけです。
ちなみに、変数のデータ型にはそれぞれアイコンが割り当てられていて、
アクションの設定項目欄の左端に表示されています。
2-3. 「Excelの基本操作:閉じる」アクション
前回の入力項目をレコーディングした部分が終わった後に、
「Excelの基本操作:閉じる」アクションを配置します。
以下を設定してBotを保存します。
ファイルを閉じる時に変更を保存:読み取り専用で開いているので、チェックOFF
セッション名:「Default」のままで
リスト表示してみるとこんな感じです。
※RPA Hackathonでは、アクセスする度に項目の並び順が変わるので、
人によって画面項目の順序は変わります。
3. 「レコーダー:キャプチャ」アクションの設定変更
続いて、前回レコーディングした際には適当な文字を入力していた部分を、
Excelファイルから取得した値に差し替えていきましょう。
なお、Excelは以下のようになっています。
3-1. [キーボード操作]の値を差し替え
1つ目の画面項目(例では[First Name])に入力させるアクションの設定で、
[キーボード操作]欄に設定されている値を削除し、右端の[値を挿入]アイコンをクリックします。
選択肢から先程作成した変数を選択します。
[テーブル行インデックス]は後で設定するので、
いったんデフォルトの「0」のままにしておきます。
[テーブル列]は、Excelファイルの列番号で指定する場合は[インデックス別]を選択して、
列番号を入力します。番号は「0」から始まります。
A列が「0」、B列が「1」、C列が「2」ということになり、
この場合Excelの「First Name」はA列なので「0」を設定します。
もっと複雑なBotの場合など、数字型変数で指定することもできます。
Excelファイルのヘッダ名で指定する場合は[名前別]を選択して、
ヘッダ名「First Name」を直接入力します。
こちらも文字列型変数で指定することもできます。
なお、ヘッダ名で指定したい場合は、最初の「Excelの基本操作:開く」アクションにて
[シートにヘッダーを含む]をチェックしておく必要があります。
すべての設定が終わったら[はい、挿入します]ボタンをクリックします。
続いてBotの[保存]ボタンをクリックします。
残りの画面項目にテキストを設定する「レコーダー:キャプチャ」アクションでも、
すべて値を差し替えます。
リスト表示してみるとこんな感じです。
3-2. テスト実行
ここまでやったら、テスト実行してみましょう。
以下を実施した後、Control Roomの[実行]をクリックします。
[Download CSV]ボタンをクリックしないとエラーになりますが、
直近にダウンロードしたファイルを使わなくても大丈夫なので、
毎回CSVをExcelへ変換する必要はなく、Bot作成時に使ったExcelのままでOKです。
【手動】RPA Hackathonの「LEVEL1」へアクセス
【手動】[Select a RPA Tool]で「Automation Anywhere」を選択
【手動】[Download CSV]ボタンをクリックしてCSVファイルを入手
【手動】[Start]ボタンをクリック
Excelの1行目の値を画面に入力していることが確認できると思います。
ただ、一通りの処理を実行したらBotの実行は完了しますので、
画面はSTEP 2の状態のままとなります。
なお、このRPA Hackathon「LEVEL1」はSTEP 20まであり、
途中で以下のような子画面が表示されることがあります。
この子画面への対処方法はまた別の回でご紹介したいと思いますので、
今のところは、もし出てきてしまった場合は、手動で対応してください。
そうすれば、その後Botが処理を実行してくれると思います。
4. まとめ
いかがでしたか?
Excelの全データを使う場合は、Botを作るのもそれほど難しくないことが
わかっていただけたのではないかと思います。
次回は同じ処理を「Excelの高度な操作」パッケージを使って作ってみたいと思います。
著者紹介
先端技術推進統括部
RPAビジネス推進部
西尾 玲