プログラミングいらずの『UiPath Studio X』で初めてのRPAロボット作成(初心者向け)

業務効率化
スポンサーリンク

RPAロボットが作りたい

RPA(Robotic Process Automation ロボティック・プロセス・オートメーション)

数年前から盛り上がりを見せ、「RPAで事務作業の自動化?あたりまえでしょ?」といったムードさえ感じる今日この頃ですが、気になりつつも手を出せていない方も多いことかと思います。かくいう私もその一人です。

しかし、私のクライアントたる中小企業こそ、RPAの恩恵を素早く爆発的に得られるであろうことは自明。RPAツールの大手『UiPath』のサービスは、中小企業向けのプラン(Community Cloud)であれば無料で利用できます。

さらに最近『UiPath』より、専門的なプログラミング知識がなくてもRPAロボットが作成できる新ツール『UiPath Studio X』がリリースされました。

いまこそ時機、と一念発起して今回チャレンジしてみましたのでその結果をまとめました。私と同じ、RPA初心者の方に届くよう、手順を細かめに記載しましたのでご参考になれば幸いです。

今回のテストケースでは、[Excelに記載された電車の経路情報をもとに、Yahoo路線から運賃を調べる作業を自動化する]という例を取り上げますが、これは『税理士のためのRPA入門』という著書も発行されている、税理士の井ノ上陽一さんの下記記事を参考にさせていただいています。

UiPath×Excel。Excelデータを読み取り、ブラウザで交通費検索。無料で使えるRPAツール。 | EX-IT
UiPath(ユーアイパス)は、無料で使えるRPA(ロボット)ツールです。 これを使って、交通費検索のサンプルをつくる過程を解説します。 目次1 ひとりしごとのRPAツールの選択肢2 UiPathの導入、インストール3

大変参考になりました。この場を借りてお礼を申し上げます。

※井ノ上さんの記事は、まだ『UiPath Studio X』がリリースされていない時期でしたので、開発者向けの『UiPath Studio』を利用されています。
今回の記事では、同じことを『UiPath Studio X』で作成する方法を紹介します。

『UiPath Studio X』の導入

早速、『UiPath Studio X』をインストールしましょう。

『UiPath』のサイトへアクセス。

RPA ロボティック・プロセス・オートメーション | UiPath(ユーアイパス)
UiPathは、RPAプラットフォームのグローバルリーディングカンパニーです。RPAやAIによる業務自動化や働き方改革、お客様満足度の向上、すべての人がロボットと働く未来を実現します。

[トライアルの開始]をクリック。

2020-02-29_19h00_24

[Community Cloud]を選択し、[Try it]をクリック。

2020-02-29_19h05_03

指示に従ってアカウントを作成します。

2020-02-29_19h07_41

管理画面が表示されますので、まずは言語を[日本語]に設定します。

2020-02-29_19h11_28

[Studioをダウンロード]をクリックします。

2020-02-29_19h12_27

ダウンロードしたインストールファイルを実行します。
[UiPathStudioSetup.exe]

2020-02-29_19h14_41

『UiPath Studio』のインストールが始まります。(結構長いです。)

2020-02-29_19h16_40

アクティベーション画面では[Communityライセンス]を選択します。

2020-02-29_19h31_33

プロファイルの選択で【UiPath Studio X プレビュー版】を選択します。

2020-02-29_19h32_42

更新プログラムチャネルは無難に[安定]を選択しておきましょう。

2020-02-29_19h33_30

インストール完了。スタート画面が開きます。

2020-02-29_19h35_15

テストケース:電車運賃を調べる自動化ロボットを作ってみましょう

シナリオはこんな感じです。
人事とか総務の仕事でありそうな仕事です。

・社員複数人分の電車通勤経路を記載したExcelファイルがある。
・それぞれの経路の電車運賃を「Yahoo路線」で調査する。(なるべく早い経路で)

Excelファイルこのように用意しました。

2020-02-29_19h47_51

また、Yahoo路線のサイトはご存じのとおり、こんな感じです。

2020-02-29_19h56_01

2020-02-29_19h57_01

どのように自動化するか?

上記のテストケースでは、ロボットに次のような動きをさせれば自動化ができそうです。

1)「Yahoo路線」のサイトを開く。

2)元データが入力されたExcelファイルを開く。

3)Excelに記載されている[No.1]の社員の[出発駅][到着駅]を、『Yahoo路線』の[出発]と[到着]のフィールドに転記する。

4)『Yahoo路線』の[検索]のボタンを自動でクリックする。

5)『Yahoo路線』の検索結果の候補のうち、[到着時間順]の一番上にリストされている候補の運賃を抽出し、Excelに記載されている[No.1]の社員の[金額]のセルに転記する。

 ※3)~5)の作業をExcelに記載されている人数分(No.1~No.3まで)繰り返す。

6)最後にExcelファイルを保存する。

では、実際に『UiPath Studio X』でロボを作ってみます。
なお、出来上がりの動きはこちらです。これを目指して作成していきます。

【UiPath Studio X】Yahoo路線で運賃を調べる作業を自動化

あらかじめ行っておく設定:UiPath拡張機能

今回のロボの作成に当たっては、事前に行っておく設定があります。
今回のケースでは、連携させるツールとして[Chrome]と[Excel]を使うのですが、それぞれに対し、「UiPATH拡張機能」をインストールしておく必要があります。

<拡張機能のインストール方法>

スタート画面で[ツール]を選択。

2020-02-29_19h35_152

ChromeとExcelの拡張機能をそれぞれインストールしておきます。

2020-03-01_16h29_03

いよいよ『UiPath Studio X』でRPAロボット作成

テンプレートの選択

『UiPath Studio X』には、いくつかのテンプレートが用意されています。

今回のロボは[Excelデータをアプリケーションに入力]のテンプレートがフィットしますので、これを利用します。

2020-03-01_16h02_38

プロジェクトのプロセス名(タイトル)、説明を記入します。

2020-03-01_16h05_09

ワークスペースが作成されます。

2020-03-01_16h06_57

2020-03-01_16h10_05

それでは、このテンプレートに沿ってロボットを設計していきましょう。

「Yahoo路線」のサイトを開く。

テンプレートは、Excelからデータを転記する対象となるWEBサイトを指定するところから始まります。

2020-03-01_16h11_27

ます、ブラウザでYahoo路線を開いておきます。(今回はchromeを利用します)

乗換案内、時刻表、運行情報 - Yahoo!路線情報
Yahoo!路線情報 - 「出発地」から「目的地」への乗換案内サービスです。路線の運行情報、時刻表もご提供中。

2020-03-01_16h18_36

次に[Use browser IE]のアクションのメニューから、[ターゲットを指定]を選択します。

2020-03-01_16h14_34

先に開いておいたYahoo路線の画面が、下図のように選択された状態でクリックします。

2020-03-01_16h35_25

すると、[Use browser IE]のアクションが下記のように設定されます。

2020-03-01_16h37_28

矢印の箇所、タイトルと注釈は変更ができますので、分かりやすい内容に変更しておきます。

2020-03-01_16h38_22

2020-03-01_16h43_43

ここまでで、「ChromeでYahoo路線を開く」という動作を自動化する設定ができました。

元データが入力されたExcelファイルを開く。

次に、Yahoo路線に転記するための元データが入力されているExcelを指定します。

テンプレート通り、[Use Excel File]のアクションを使います。

2020-03-01_16h44_56

・①に元データが入力されているExcelを指定します。
・②にそのExcelの参照名を入力します。

2020-03-01_16h51_56

ここまでで、「Yahoo路線に転記するための元データが入力されているExcelを開く」という動作を自動化する設定ができました。

Excelに記載されている[No.1]の社員の[出発駅][到着駅]を、『Yahoo路線』の[出発]と[到着]のフィールドに転記する。

次に、Excelファイルの値をYahoo路線に転記していく動きを設定します。

Excelの繰り返し(各行)の設定

この動作は、Excelに記入されている行の数だけくりかえしますので、
テンプレート通り、[Excel For Each Row:Excelの繰り返し(各行)]のアクションを利用します。

[範囲またはテーブル]には、先ほど設定したExcelファイルが自動的に登録されていることが分かります。

2020-03-07_05h58_32

のちのちのため、タイトルや注釈は分かりやすい内容に変えておきましょう。

2020-03-07_06h01_32

次の作業からはテンプレートから外れた作業を設定するので、現在テンプレートで指定されている以下4つのアクションを削除しておきます。

・Click ‘New Supplier’
・Type Into ‘Internal Name *’
・Select Item ‘Industry *’
・Click ‘Save’

2020-03-07_06h06_30

※各アクションの削除
該当のアクションを選択し(そのアクションがオレンジの枠で選択された状態)、Deleteキーを押すと削除できます。

2020-03-07_06h10_17

Excelの[出発駅]をYahoo路線の[出発]フィールドに転記する

最初に、Excelファイルに記入されている[出発駅]を、Yahoo路線の[出発]のフィールドに転記するアクションを作成します。

2020-03-07_06h16_28

[アクティビティ]エリアで[アプリケーション]を選択し、
その中のアクションから、[文字を入力]を選び、メイン画面の配置したい箇所にドラッグします。

2020-03-07_06h21_18

[文字を入力]のアクションが作成されます。

2020-03-07_06h25_02

ここにもタイトルと注釈を入れておきます。

2020-03-07_06h29_59

※注釈を入れる方法

注釈は、該当のアクションを右クリックし、メニューの中から[注釈]-[注釈を追加]で入力することができます。

2020-03-07_06h28_32

[ターゲットを指定]をクリックします

2020-03-07_06h34_17

・yahoo路線のサイトが開きます。
・画面に[Selection Options]表示されるまで待ちます。

2020-03-07_06h37_02

出発駅を入力するフィールドにマウスのカーソルを合わせると、以下のように緑の枠で囲まれます。

2020-03-07_06h41_56

この状態(ターゲットが緑で囲まれた状態)でクリックすると、
[自動アンカーを検索しています]といメッセージが表示されます。
しばらくそのまま待ちます。

2020-03-07_06h49_26

アンカー(青いイカリのマーク)が、[出発]の文字に設定されます。
別の場所がアンカー設定されている場合は手動で[出発]を選択します。

※アンカー:
入力対象のフィールドをズレなく指定するための目印のようなものです。

2020-03-07_06h59_34

この状態で、[Selection Options]の[確認]をクリックします。

2020-03-07_07h05_20

すると、このようにターゲットが確定します。

2020-03-07_07h07_56

次に、指定したターゲットにExcelの[出発駅]の値を転記する動きを設定します。
[これを入力]のエリアの[+]ボタンをクリックします。

2020-03-07_07h07_56

[現在の行]-[出発駅]を選択します。
※このことにより、「指定したExcelの[出発駅]の列の値を自動的に転記」という動きを設定できます。

2020-03-07_07h15_33

このように[これを入力]に[出発駅]が設定されればOKです。

2020-03-07_07h23_01

ここで、ここまでの動きをテスト実行してみましょう。
※アクションを追加するごとに、こまめに動作テストをしながら進めるのが大事です。

★動作テスト:出発駅の転記がうまくいくか?

まずはここまでの設定を保存します。

2020-03-07_07h34_42

次に、現在開いているブラウザ、Excelファイルを閉じます。
※なにも開いていない状態からテストするのが良いと思います。

そして、『UiPath Studio X』上の【▶:実行】のボタンをクリックします。

2020-03-07_07h33_55

※PCのスペックによっては、テストが開始するまでに少し時間がかかります。
「あれ?止まった」と思いがちですが、少し待ってみてください。
テスト実行中は[UiPath.Agent]というプログラムが動き、タスクバーに白抜きの[Ui]のアイコンが表示されます。

2020-03-07_07h49_04

ここまでの設定では、
・Yahoo路線を自動的に開く
・サンプルExcelを自動的に開く
・Excelの[出発駅]をyahoo路線の[出発]のフィールドに転記する。
・この動きを、No1~No3まで3回繰り返す

という動作が目視確認できればOKです。

2020-03-07_06h16_10

エラーなく完了すればOKです。

うまく動かないとき

うまく動かない場合、次の2点を確認してみてください。

① 入力ターゲットのフィールドの選択範囲

入力のターゲットを選択する際、マウスの位置によってフィールドの選択範囲が微妙に変わります。

下の画像のように選択範囲が広い(フィールド全体が選択されている)状態になるように設定してみてください。

経験上、右のように選択範囲が狭いとうまく動作しないケースが多くありました。

2020-03-08_09h45_59

② アクションの実行待機時間

動作がうまくいかない場合、ロボの動きにPCのスペックやブラウザの表示スピードが追い付いていないことが原因のケースもあります。

その場合は、各アクションのプロパティから、[実行前の待機時間][実行後の待機時間]の設定を調整することで解決することがあります。

各アクションのプロパティは、対象のアクションが選択されている状態(オレンジの枠で囲まれている状態)で、画面右上の[プロパティ]の文字をクリックすると表示されます。

2020-03-08_09h59_17

[プロパティ]の[実行前の待機時間][実行後の待機時間]の設定を調整します。

デフォルトでは、
[実行前の待機時間]が【200ミリ秒】
[実行後の待機時間]が【300ミリ秒】
になっています。

ロボの動作がうまくいかない場合、この待機時間を【1000ミリ秒~2000ミリ秒】(=1秒~2秒)といったすこし極端めの値に設定して、その設定で問題が解決するかを確認します。

問題が解決する場合は実行待機時間が必要と思われますので、時間を微調整していきます。

2020-03-08_10h02_22

待機時間を設定するには、右側の[+]ボタンを押し、選択肢の中から[数値]を選択します。
その後、表示されるウィンドウに数値を入れ保存します。

2020-03-08_10h11_36

この2点の解決方法はこれから出てくる他のアクションでも同様に有効な場合がありますので、気に留めておいてください。

Excelの[到着駅]をYahoo路線の[到着]フィールドに転記する

それでは次に、同様の手順でExcelファイルに記入されている[到着駅]を、Yahoo路線の[到着]のフィールドに転記するアクションを作成します。

手順は上記の[出発]の場合と全く同じですので、設定結果のみ画像を貼っておきます。

2020-03-08_11h09_21

ここでも動作テストを行っておきましょう。

ここまでの設定では、

・Yahoo路線を自動的に開く
・サンプルExcelを自動的に開く
・Excelの[出発駅]をyahoo路線の[出発]のフィールドに、[到着駅]を[到着]のフィールドに転記する。
その動きを、No1~No3まで3回繰り返す。

という動作が目視確認できればOKです。

『Yahoo路線』の[検索]のボタンを自動でクリックする。

ここまでの手順で、Yahoo路線の[出発]と[到着]に値を転記する動きを設定しました。
次は、Yahoo路線の【検索】のボタンをクリックする動作を設定します。

2020-03-08_10h42_11

[アクティビティ]エリアで[アプリケーション]を選択し、
その中のアクションから、[クリック]を選び、メイン画面の[文字を入力:到着]のアクションの後にドラッグします。

2020-03-08_10h43_57

[ターゲットを指定]をクリックします。

2020-03-08_10h46_51

【検索】ボタンをターゲットに指定します。

2020-03-08_10h48_47

『UiPath Studio X』上でこのように設定されていればOKです。

2020-03-08_10h51_17

ここでも動作テストを行っておきましょう。

ここまでの設定では、

・Yahoo路線を自動的に開く
・サンプルExcelを自動的に開く
・Excelの[出発駅]をyahoo路線の[出発]のフィールドに、[到着駅]を[到着]のフィールドに転記する。
・【検索】ボタンをクリックし、検索結果が表示される。
その動きを、No1~No3まで3回繰り返す。

という動作が目視確認できればOKです。

『Yahoo路線』の検索結果の候補のうち、[到着時間順]の一番上にリストされている候補の運賃を抽出し、Excelに記載されている[No.1]の社員の[金額]のセルに転記する。

ここまでは、ExcelファイルからYahoo路線にデータを転記する設定でしたが、次は、逆にYahoo路線の画面上の文字列をExcelファイルに返す作業を設定していきます。

2020-03-08_11h00_38

まずは、事前にYahoo路線のサイトで検索を実行した後の画面を表示しておきます。
※出発駅、到着駅は任意の設定で構いません。

2020-03-08_11h22_06

『UiPath Studio X』の[アクティビティ]エリアで[アプリケーション]を選択し、
その中のアクションから、[テキストを取得]を選び、メイン画面の[クリック:検索]のアクションの後にドラッグします。

2020-03-08_11h03_09

[ターゲットを指定] をクリックします。

2020-03-08_11h20_05

・ターゲット(緑の枠)として、検索結果画面の[到着時間順]の一番上の金額を指定します。
・アンカー(青の枠)として、[ルート1]の文字を指定します。

2020-03-08_11h31_04

※金額欄については、下の画像のように、広い選択範囲で指定するように注意してください。

2020-03-08_11h25_33

『UiPath Studio X』上で、このように設定されます。
※Yahoo路線の検索結果から、[ルート1]の金額を取得する、という設定です。

2020-03-08_11h42_10

次に、この取得した金額を、Excelファイルの[金額]の列に返す設定を行います。

[保存先]の[+]ボタンを押し、[現在の行]-[金額]を選択します。

2020-03-08_11h45_21

↓のように、[保存先]に【金額】が指定されます。

2020-03-08_11h47_23

ここでも動作テストを行っておきましょう。

ここまでの設定では、

・Yahoo路線を自動的に開く
・サンプルExcelを自動的に開く
・Excelの[出発駅]をyahoo路線の[出発]のフィールドに、[到着駅]を[到着]のフィールドに転記する。
・【検索】ボタンをクリックし、検索結果が表示される。
・検索結果画面の[到着時間順]の一番上の金額を、Excelの[金額]の列に返す。
その動きを、No1~No3まで3回繰り返す。

という動作が確認できればOKです。

最後にExcelファイルを保存する。

ここまでの作業で、目的としている動作の設定は完了しました。
最後に、出来上がったExcelファイル(金額が返されたExcelファイル)を保存するアクションを追加しておきます。

ポイントは、「繰り返し動作が終わった後に保存する」という点です。
Excelファイルを保存するアクションは、[Excelの繰り返し]のアクションの枠外に配置する必要があります。
※下図の矢印の位置です。

2020-03-08_12h13_49

[アクティビティ]エリアで[Excel]を選択し、
その中のアクションから、[Excelファイルを保存]を選び、メイン画面の[Excelの繰り返し]のアクションの枠外にドラッグします。
※下図の赤枠の部分です。

2020-03-08_12h17_11

[Excelファイルを保存]のアクションが追加されます。

2020-03-08_12h19_43

[ファイル]の[+]ボタンから該当のExcelファイル(今回のケースでは[sample_excel])を選択します。

2020-03-08_12h21_37

以上で設定は終了です!

電車運賃検索ロボの動作確認

それでは、作成した電車運賃検索ロボの最終動作確認をしましょう。
以下の動作が確認できればOKです。

1)「Yahoo路線」のサイトを開く。

2)元データが入力されたExcelファイルを開く。

3)Excelに記載されている[No.1]の社員の[出発駅][到着駅]を、『Yahoo路線』の[出発]と[到着]のフィールドに転記する。

4)『Yahoo路線』の[検索]のボタンを自動でクリックする。

5)『Yahoo路線』の検索結果の候補のうち、[到着時間順]の一番上にリストされている候補の運賃を抽出し、Excelに記載されている[No.1]の社員の[金額]のセルに転記する。

 ※3)~5)の作業をExcelに記載されている人数分(No.1~No.3まで)繰り返す。

6)最後にExcelファイルを保存する。

いかがでしたでしょうか?
このシナリオ通り動くと、下図のようなExcelファイルが自動的に作成されます。

2020-03-08_15h24_05

※再度、動画も掲載しておきます。

【UiPath Studio X】Yahoo路線で運賃を調べる作業を自動化


まとめ

今回のサンプルケースでは、

・Excelのデータをアプリケーションに渡す
・アプリケーションの値をExcelに返す

という動作が含まれていますが、この基本的な設定方法を理解していれば、かなりの割合の事務作業の自動化が実現できるのではないかと思います。

遅めに踏み出した小さな一歩ですが、引き続き、研究を続けていきたいと思います。

タイトルとURLをコピーしました