UiPath StudioXでExcelからGoogleChromeで交通費検索

UiPath StudioXの練習にも向いている、Excelからブラウザで交通費を検索するプログラムのつくり方をまとめてみました。

UiPath StudioXで、ブラウザを開いて交通費検索

UiPath StudioXについては、こちらの記事や動画を参考にしていただければ。

RPAをはじめるならUiPath StudioX

プログラム未経験者向けRPA UiPath StudioXのはじめかた – YouTube

今回つくるのは、次のようなものです。
まずは、2からつくっていきます。

1   Excelからデータを読み取る

2 ブラウザでその読み取ったデータを検索

3 その結果をExcelに書き込む

 

空のタスクをつくり、

プロセス名、フォルダを指定し、

 

UiPath StudioXを開きます。

交通費検索に使うのは、このサイトです。

乗換案内、時刻表、運行情報 – Yahoo!路線情報
GoogleChromeで開いておきます。

 

UiPath StudioXに戻り、ブラウザの操作を記録していくわけですが、その前に、プロジェクト設定を開き、

レコーダーを有効化しておきましょう。

これは、現状プログラムごとにやらなければいけません。

 

[アプリ/Webレコーダー]をクリックし、

 

レコーディングをスタートしましょう。

 

このような表示が出ますので、ブラウザの交通費検索サイトのどこでもいいのでクリックします。

クリックすると、サイトの情報を読み取ってくれるのです。

 

次に、出発駅を入れる操作をレコーディングします。
該当の欄にカーソルをあてて、[文字を入力]をクリックし、

たとえば、「新宿」と入力し、

到着駅をクリックして(いったんクリックする必要があります)、同様に「渋谷」と入れましょう。

次に[検索]をクリックし、

 

出てきた結果の一番上の157円にカーソルをあて、[テキストを取得]を選びましょう。

このデータを最終的には、Excelへ書き込みます。

レコーディングを一時停止し、

閉じようとすると、次のような表示が出るので、[はい]で保存します。

 

 

UiPath StudioXに戻ると、このように記録されていることがわかります。
ただ、赤い警告マークが出ているので、下にスクロールしてみましょう。

警告マークにカーソルをあてると、「保存先を設定してください」と出ています。
テキストを取得した後にどこか保存先を指定する必要があるのです。

+のアイコンをクリックして、たとえば「料金」と名前を付けましょう。
この名前でこの後使います。

ここでプログラムを実行するとエラーが出ます。
テキストの取得がうまくいっていないからです。
右上のアイコンをクリックし[ターゲットを編集]をクリックすると、

 

このように指定したところのチェックができます。
メッセージには、「重複が見つかりました」と。
これは、黄色い部分が似ているので、UiPath StudioX側が認識できていないのです。
(ブラウザやサイトによってこういうことがありえます)

こういったときは、選択箇所にカーソルを置き、左から2つ目の[アンカーを追加]を選びます。
アンカーとは、確実に認識できるところを指定して、UiPath StudioXに正しく伝えることができるものです。

たとえば、157円のちょっと上にある[乗換回数順]なら確実に認識できそうなので、クリックすると、

このように157円の部分が緑になります。
緑だと認識できているということです。

 

UiPath StudioXに戻り、左側のメニューから[1行を書き込み]をドラッグして追加し、[保存された値を使用]→[料金]をクリックしましょう。
検索結果の157円が正しく認識できているかのチェックのためです。

これで実行できます。

 

 

実行後、左下の[出力]をクリックすると、その実行結果が出てきて、157円とあるので、うまくいっているということです。

 

試しに、プログラム内の、「新宿」を

「東京」に変え、

「渋谷」を「有楽町」に変えて実行してみましょう。

このように検索され、

出力がうまくいっていればOKです。

 

ここまでをつくってうまくいくようになってからExcel部分をつくっていきます。
少しずつ作ったほうが、プログラミングは楽で、混乱しません。

UiPath StudioXで、Excelを読み取る

Excelを読み取るのは、左側のカードとアクションを使います。
カードは必須です。

ここではExcelを使うので、さきほどつくったブラウザの操作のプログラムの上に、[Excelファイルを使用]をドラッグし、フォルダのアイコンをクリックして、

 

該当のファイルを指定します。
※こちらからダウンロードできます。
EX-ITサンプル_UiPath StudioX交通費.xlsx

次にデータを読み込むには、[Excelの繰り返し(各行)]を使うので、ドラッグしましょう。

ここでは、どのデータを繰り返すかが選べますので、[Excel]→[Data[シート]]をクリックしましょう。

先ほど読み込んだExcelファイルのシートDataをUiPath StudioXで読み取れるのです。

先頭行にヘッダー(見出し)が入っているので、ここにチェックを入れましょう。
これでシート内のデータをすべて読み取れます。

先ほどと同様に[1行を書き込み]をドラッグし、CurrentRow → 出発 をクリックしましょう。
テストのためです。

ここで実行したいところですが、すべて実行すると、さきほどのブラウザの操作の部分も実行されてしまいます。
こういったときは、Excel部分で右クリックして[このアクティビティまで実行]をクリックすると便利です。
必要なところまで実行することができます。

実行の結果、Excelから読みとった「新宿」(1つ目のデータ)が表示されていれば、OKです。

 

UiPath StudioXで、Excelから読み取ったデータで交通費検索→書き込み

 

最後に、Excelから読み取ったデータを、ブラウザ操作のプログラムに組み込んでいきます。

ブラウザの部分の右上をクリックして、

いったん折りたたみ、ドラッグして、[Excelの繰り返し(各行)」に入れていきましょう。

こうなります。
ブラウザで検索して書き込む部分も繰り返すということです。

これまでは「東京」と入力していたところを、Excelから読み取るデータに変えていきます。
+のアイコンをクリックし、[CurrentRow]→[出発]とクリックしましょう。

同様に[到着]もクリックします。

ここでプログラムを実行すると、3つあるデータがすべてうまくいっていることがわかります。

 

テストは終わったので、[1行を書き込み]は、Deleteキーで削除します。

[セルに書き込み]をドラッグし、

書き込む内容として、[料金]、

書き込む場所は、Excelの[金額]列なので、[金額]をクリックします。

さらには、[行を自動インクリメント]にチェックを入れておきましょう。

これは、2行目に書き込んだら、次は3行目、4行目とインクリメント(増量)するという意味です。

 

実行するとこうなります。
まあ、完成といえば閑静なのですが、「円」があると、計算につかえません。
Excelで置換してもいいのですが、美しくないので、これもUiPath StudioXで処理します。

 

UiPath StudioXには、プロジェクトノートブックというExcelファイルがあり、このファイルを使って様々な操作を、通常のプログラミングよりもかんたんにできる機能があります。

[プロジェクトノートブックを開く]をクリックすると、こういったファイルが開くので

シートTextを開きましょう。
ここでは、テキストを置換できます。
157円の「円」を空白に置換すれば、157になるので、その置換をやりたいわけです。

Text(input)には、対象のテキストをUiPath StudioXで入れるのでこのままにしておき、Search、Replaceを入れ、その結果のResult をUiPath StudioXでまた使います。

 

このように設定してプロジェクトノートブックは閉じましょう。

 

[テキストを取得]の保存先を、プロジェクトノートブックのText(input)にし、

[セルに書き込み]の書き込む内容をプロジェクトノートブックの[Result]にします。

これで円がなくなります。

また、このプログラムの実行を繰り返すと、ブラウザがどんどん増えるので、ブラウザを閉じる操作も入れておきましょう。
(最初のほうで入れてもかまいません)

[ブラウザー内を移動]をドラッグし、[タブを閉じる]を選べば、毎回閉じます。

 

できあがったプログラムはこんな感じです。

従来のUiPath Studioよりもわかりやすい部分が多い、UiPath StudioX。
ぜひ試してみていただければ。

 



■編集後記

昨日は、Excel入門セミナーを、税理士業に特化して開催しました。
動画でも販売する予定です。
編集に時間かかりそうですが。

 

「1日1新」
オンラインで税理士のためのExcel入門セミナー開催

■娘(3歳5ヶ月)日記
親子ともにベーグルが好きなのですが、外出しないので買うタイミングがなく……。
オイシックスでたまに頼んではいます。
プレーンが好きなのですが在庫がなくて、成城石井にもあったはず!と、昨日一緒に買いに行きましたが、プレーンはありませんでした。
どっかで仕入れないと……。
ベーグル&ベーグルのオンラインショップで頼もうかなと。

■YouTube更新情報

仕事に集中するための通知オフ – YouTube