UiPathのRPAチャレンジ「顧客データを登録するワークフロー」の解き方

ROOKIEプログラムというAI・RPA人材教育、育成、キャリア支援プラットフォームを提供しているPLAY株式会社の藤間です。

今回は、UiPathのRPAチャレンジ「顧客データを登録するワークフロー」解き方を共有します。

【問題】

【RPAチャレンジでダウンロードしたExcelファイル】


やる事は、
①Excel上の全ての顧客データを取得し、
②取得したデータを一行ずつRPAチャレンジのwebページに転記し登録する 事です。


①②の手順は以下です。

①Excel上の全てのデータを取得
・ダウンロードしたExcelファイルを任意のフォルダに置きます。

・「Excelアプリケーションスコープ」アクティビティで、パスを指定し、Excelファイルを読み取ります。

・「範囲を読み込み」アクティビティで、シート名(ここではSheet1)を指定し、Excelファイルの顧客情報データを取り出します。(出力変数を dt_excel としています。)

【出来上がったワークフロー】


なお、「範囲を読み込み」アクティビティのプロパティ設定で、「ヘッダーの追加」にチェックがついている事を確認ください。
 

②取得したデータを一行ずつRPAチャレンジのwebページに転記し登録する。

・「繰り返し(各行)」アクティビティで、excelデータを一行ずつ取得し、各行を変数rowに詰め込みます。これで、行単位で処理を実行できます。

・「ブラウザをアタッチ」アクティビティで、RPAチャレンジのwebページを指定します。


ここからが重要です!!!
アンカーベースを利用し、ロボットに入力欄のラベルを探させた上で、入力欄を指定する必要があります。

アンカーベースを使わずに、「文字を入力」アクティビティを利用するだけでは、うまくいきません。なぜなら、同じ入力欄であっても、ページによって、入力欄のセレクタが異なるからです。

例えば、以下の通り、ページによっては、同じselecterでも入力欄を認識出来たり、出来なかったりします。もちろん、項目の順番もページ間で異なるので、indexでの指定も出来ません。


それでは、アンカーベースを使い、入力欄を指定します。
「要素を探す」アクティビティで入力欄のラベルを指定し、「文字を入力」アクティビティで文字を入力します。

なお、入力データは、「row("ヘッダー名").ToString」で指定できます。

同様にして、他入力欄にも顧客情報データを入力するフローを作成し、「クリック」アクティビティでweb上の「登録」をクリックします。最後に、バックグラウンドでも動作するよう、各「文字を入力」アクティビティのプロパティで「入力をシミュレート」にチェックがある事を確認ください。

完成したワークフローは以下の通りです。


以上です。お疲れさまでした。


この記事が気に入ったらサポートをしてみませんか?