【初心者向け】RPA入門|ゼロから始めるRPA(Automation 360) ~実践編 交通費申請のチェックロボットを作ってみよう その2~

このシリーズでは、Automation Anywhere社の「Automation 360」を使用してRPAの使い方を解説していきます。
Automation 360 による自動化の解説の全4回のうち、今回は第2回になります。まだ第1回をご覧になっていない場合は、先に第1回をご確認いただいた上で、第2回をご覧ください。
前回は、Automation 360を使って「交通費申請の出発駅・到着駅を経路案内サイトに入力し、料金を検索する」ロボットを作成しました。今回は、前回作成したロボットを修正して、Excelの交通費申請の出発駅、到着駅を経路案内サイトに入力し、料金を検索できるようにします。
まず、作業をロボットで自動化する際に必須となる変数について説明し、その後実際にロボットを編集していきます。
次回以降は下記をご紹介します。
・Excelから取得した値と検索結果を比較し、結果をExcelに記入する
・繰り返し処理を実装し、ロボットを完成させる
変数
Automation 360はプログラミング知識が不要ですが、実務レベルの作業をロボットに任せるにあたって、変数という考え方は必須になります。プログラミングのご経験がある方にとっては馴染みのあるものだと思いますので、解説が不要であれば本項目は読み飛ばしていただいて構いません。
では、変数とは何か、どのように使うのかについてご説明します。
変数とは
変数はよくデータを入れておく箱と表現されます。
ロボットが取得したデータや生成したデータを変数という箱に入れておくことで、後から使ったり箱の中身を加工したりすることができます。
例えば…
- 受信したメールの本文や送信者の名前
- 計算結果の数値
- 現在の日付や時間
ロボットは指示された通りにしか動きません。「○○を覚えて」という指示をしないと前の指示で取得したデータを後の指示で使うことができないのです。ここでデータを入れておくための箱「変数」が必要になります。
変数の型(タイプ)
箱に入れるデータの種類によって変数の「型」が異なります。現実世界でも何を箱に入れるかによってどの箱を使うか決めますよね?ロボットを作るうえでも箱の使い分けがあります。
例えば…
- 文字列型(テキストを保持)
- 数字型(数値を保持)
- 日時型(日付や時刻を保持)
- ブール型(真または偽を保持)
- リスト型(例えば曜日を保持 日,月,火,水,木,金,土)
- テーブル型(例えば5×10の表を保持)
変数には入れられるものに制限があり、適材適所に使う必要があるのです。
変数名
変数は名前をつけて管理する必要があります。箱がたくさんあると、どの箱にどんな値が入っているかわからなくなってしまいます。ここで名前が重要になります。箱に何が入っているか書いてあれば毎回中身を確認する必要はありませんよね?この点においても現実世界の箱と変数は共通しています。
乗換案内の主要路線の運行状況(平常運転、ダイヤ乱れ、運転見合わせなど)を取得するロボットについて考えてみましょう。
ロボットが取得した各路線の運行情報を次の変数に入れたとします。
文字列1、文字列2、文字列3、文字列4、文字列5、文字列6
いざJR山陽本線線の運行情報を使おうとすると、どの変数を使えばよいか分からなくなってしまいます。
こういった事態を避けるために、変数にはどんな役割を持ち、どんな値を保持するのかがわかるような名前をつける必要があるのです。今回であれば、次のような変数名が適切でしょうか。
JR山陽本線、JR東海道本線、JR片町線、東武東上線、横浜高速鉄道みなとみらい線、JR京浜東北線
変数についての説明は以上になります。
Excelから読み取った値をウェブ画面へ入力しよう
前回は名古屋-東京間の乗換案内を検索する処理を実行しましたが、今回自動化する業務では、出発駅・到着駅は申請内容によって異なります。交通費申請の出発駅・到着駅で検索できるようにしていきましょう。
交通費申請書のExcelはこちらからダウンロードしてください。
クリックでダウンロード
- 前回作ったロボットの編集画面に移動する
まだ作成されていない方は前回の実践編に手順が載っておりますのでご参照ください。 - 変数をつくる
処理で使う変数をあらかじめ作成しておきましょう。必要になる変数は以下の通りです。
- 申請書の出発駅を保持する文字列変数
- 申請書の到着駅を保持する文字列変数
- 申請書の金額を保持する文字列変数
- 乗換案内の料金を保持する文字列変数
本来は金額や料金のデータは数字型の変数に入れるべきです。しかし、今回は金額の計算や大小比較を行わないため、手順を簡略化するために文字列変数を使用します。計算や大小比較に利用する場合は数字型の変数を使用しましょう。
- 2-1. 画面左側の[変数]をクリックし、変数の一覧を表示状態にします。
- 2-2. 画面左側の[変数]の[+]をクリックします。
- 2-3. 申請書の出発駅を保持する文字列変数を作成します。
タイプに「文字列」を選択し、名前に「出発駅」と入力します。
- 2-4. [作成]をクリックすると、変数の作成が完了します。
- 2-5. 2-2~2-4と同様に、申請書の到着駅を保持する文字列変数「到着駅」、申請書の金額を保持する文字列変数「Excelの金額」、乗換案内の料金を保持する文字列変数「乗換案内の料金」を作成します。
[自分で作成した変数]が次の画像のようになっていればOKです。
- Excelを開く
※Excelを操作するアクションは「Excelの基本操作」と「Excelの高度な操作」がありますが、今回は「Excelの高度な操作」を使用します。誤って「Excelの基本操作」を使用するとロボットが処理に失敗しますのでご注意ください。- 3-1. 画面左側の[アクション]をクリックし、[アクション]の検索ボックスに「高度な操作 開く」と入力します。
- 3-2. [アクション]から[Excelの高度な操作] – [開く]を[ブラウザ] – [開く]と[レコーダー] – [キャプチャ]の間にドラッグ&ドロップします。
- 3-3. アクションのプロパティの[デスクトップファイル]を選択します。
- 3-4. アクションのプロパティの[参照]をクリックします。
- 3-5. 出現するファイル選択ウィンドウで交通費申請書.xlsxを選択します。
選択したファイルのパスが入力されていることを確認できればOKです。
- 出発駅のセルの値を読み取る
本項目で使用する[Excelの高度な操作] – [1つのセルを取得]では、どのセルを読み取るか、読み取ったセルの値をどの変数に格納するかを指定する必要があります。交通費申請書の1行目の出発駅を指定します。
- 4-1. [アクション]の検索ボックスに「高度な操作 セル」と入力します。
- 4-2. [アクション]から[Excelの高度な操作] – [1つのセルを取得]を[Excelの高度な操作] – [開く]と[レコーダー] – [キャプチャ]の間へドラッグ&ドロップします。
- 4-3. アクションのプロパティの[セルの指定]を選択します。
- 4-4. セルアドレスに「C12」と入力します。
- 4-5. アクションのプロパティの[セル値を読み取る]を選択します。
- 4-6. アクションのプロパティの[セルのコンテンツの保存先]でドロップダウンから「出発駅」を選択します。
[セルのコンテンツの保存先]に「出発駅」と表示されていればOKです。
- 到着駅のセルの値を読み取る
出発駅と同じように交通費申請書の1行目の到着駅を指定します。
- 5-1. [アクション]から[Excelの高度な操作] – [1つのセルを取得]を[Excelの高度な操作] – [1つのセルを取得]と[レコーダー] – [キャプチャ]の間へドラッグ&ドロップします。
- 5-2. アクションのプロパティの[セルの指定]を選択します。
- 5-3. セルアドレスに「E12」と入力します
- 5-4. アクションのプロパティの[セル値を読み取る]を選択します。
- 5-5. アクションのプロパティの[セルのコンテンツの保存先]でドロップダウンから「到着駅」を選択します。
[セルのコンテンツの保存先]に「到着駅」と表示されていればOKです。
- [レコーダー] – [キャプチャ]の入力テキストを変数「出発駅」に変更します。
- 6-1. 出発駅を設定するために[レコーダー] – [キャプチャ]を選択し、[キーボード操作]に入力されている「nagoya[ENTER]」を消去します。
- 6-2. [キーボード操作]の[(x)]をクリックします。
- 6-3. 「値を挿入」画面の[変数を選択 ▼]でドロップダウンから[自分で作成した変数]の「出発駅」を選択します。
- 6-4. 「値を挿入」画面の[挿入]をクリックします。
[キーボード操作]に「$出発駅$」と表示されていればOKです。
- [レコーダー] – [キャプチャ]の入力テキストを変数「到着駅」に変更します。
出発駅と同じ手順で[レコーダー] – [キャプチャ]を実装します。- 7-1. 到着駅を設定するために[レコーダー] – [キャプチャ]を選択し、 [キーボード操作]に入力されている「toukyou[ENTER]」を消去します。
- 7-2. [キーボード操作]の[(x)]をクリックします。
- 7-3. 「値を挿入」画面の[変数を選択 ▼]でドロップダウンから[自分で作成した変数]の「到着駅」を選択します。
- 7-4. 「値を挿入」画面の[挿入]をクリックします。
[キーボード操作]に「$到着駅$」と表示されていればOKです。
- 実行する
- 8-1. 実行する前に交通費申請書、乗換案内のウェブ画面が開いていないことを確認します。
- 8-2. [実行]をクリックすると交通費申請書の1行目の出発駅-到着駅間の料金を検索します。
名古屋-名古屋城間の乗換案内のウェブ画面が表示されれば成功です。
※[レコーダー] – [キャプチャ]でエラーが発生した場合、エラー発生行の[レコーダー] – [キャプチャ]のプロパティの[システム タイムアウトの設定]-[システムの応答を待つ(秒)]の値を15から60に変更してみてください。このプロパティはロボットが画面操作を行うまでの待ち時間を設定します。ページの読み込み時間が長い場合、このプロパティを大きくすることでエラーを回避できます。
これでExcelに記載された交通費申請の出発駅、到着駅を反映できるようになりました。次回は、今回作成したロボットに交通費申請書の金額と乗換案内で検索した料金を比較し、比較結果を交通費申請書へ記入する処理を実装します。ぜひ最終回までお付き合いいただき、ロボットを完成させてください。
弊社サービスのご紹介
<無料ハンズオンセミナー>
RPA導入をご検討中の企業様向けに、Automation 360を使った無料のハンズオンセミナーを開催します。
実際にロボットを作成し、RPA導入の効果を体感していただけます。
内容については、お問い合わせください。
<Automation 360 Managed Service>
RPAの導入や運用に課題を感じていませんか?
システム担当者の負担が増えたり、自動化業務の拡大が進まないといった悩みをお持ちの企業様に、弊社の「Automation 360 Managed Service」をおすすめします。
RPAの運用管理を代行することで、お客様の自動化推進を強力にサポートいたします。