今話題のMicrosoft社謹製RPAで請求書処理業務を自動化してみた
この記事はこんな人にオススメ
○ Windowsを利用している
○ 本当に簡単にRPAを動かせるのか、工程を覗いてみたい
○ RPAツールの利点も欠点も理解しておきたい
この記事で解決されること
○ 予算やスキル不足を気にせず、今日から業務効率化に向けて動き出せる
こんにちは。株式会社RITインターン生兼DXツール調査隊の大平朱莉です。
近年低価格化が進んだRPA界ですが、とうとう無料の製品が登場してしまいました…!Win10ユーザーを対象に無償配布されている、Microsoft社謹製RPAツール、Power Automate Desktopです。
今回は、いま最も注目のRPAツールPower Automate Desktop、通称PADを用いて、実際に請求書処理業務を実装したいと思います!
そもそもRPAって何?RPAって何に使うの?という方は、こちらをご覧ください!
導入方法
まずはPower Automate Desktopを使い始めましょう。Windows10ユーザーであれば以下から追加費用無しでインストールできます。
1 PowerAutomateDesktopをダウンロード後、指示に従ってインストールを完了させます。
2 PowerAutomateDesktopの拡張機能を追加し、有効にします。これを使うと、ブラウザ画面で実際に操作しながらロボットに覚えさせたいアクションを記録できるようになります!今回はChromeの拡張機能をインストールしました!
実装の手順
冒頭でお伝えした通り、マネーフォワードクラウド請求書にて、請求書を作成・保存・送信する業務を実装していきます。
まず初めに、シナリオの流れを確認します!
1 Excelファイルの準備
2 Excelの起動
3 Excelファイルのセル読み取り
4 ブラウザ起動・ログイン
5 テキストをフォーム上に転記し、作成・保存
6 テキストをフォーム上に転記し、送信
Coopelによる実装をご覧いただいた方はお気づきかもしれませんが、Excel起動とブラウザ起動の順序が逆になっています!どちらにしても動きます。
それでは、実装に入っていきましょう~!!
1 Excelファイルの準備
今請求書に入力する情報が記載されたデータを用意します。今回はダミーデータを作成しておきました。
2 Excelの起動
データを読み取るために、先程用意したExcelファイルを開きます!
アクション一覧の中から「Excel」→「Excelの起動」をドラッグ&ドロップします。
「Excelの起動:次のドキュメントを開く」にし、「ドキュメントパス」はファイルのマークをクリックし、開きたいファイルを選択します。
ここで開いたExcelファイルは「ExcelInstance」という変数に格納されたことを確認してください。
3 Excelファイルのセル読み取り
次に、読み取り範囲を指定していきましょう。
まず、PAD特有の便利機能「Excelワークシートから最初の空の列や行を取得」を使います。この機能をつかうことで、読み取り範囲の終わりを、最初に空白のセル(空列・空行)が現れるところ(今回の場合25列目、7行目)まで、と指定する変数を獲得できます。
アクション一覧の中から「Excel」→「Excelワークシートから最初の空の列や行を取得」をドラッグ&ドロップします。
FirstFreeColumnは完全に空の最初の列の数値、FirstFreeRowは完全に空の最初の行の数値になります。画像だとどちらも列の数値という説明になっていて一瞬戸惑いますが、それでも動くのでスルーしておきましょうか。
つぎに、アクション一覧の中から「Excel」→「Excelワークシートから読み取り」をドラッグ&ドロップします。
「取得:セル範囲の値」としたうえで、先頭列、先頭行、最終列、最終行を設定します。
ここで気を付けたいのが、最終列は「%FirstFreeColumn-1%」、最終行は「%FirstFreeRow-1%」に設定することです。変数を%と%の間に入れること、読み取りの終わりを最初の空行・空列から-1することに気を付けてください。
なお、どのシートを開くかの指定は必要ありません。デフォルトで、保存する際にアクティブだったシートが開かれるようになっています。
ここで読み取った範囲が「ExcelData」という変数に格納されたことを確認したら、完了です!
4 ブラウザの起動とログイン
「マネーフォワードクラウド請求書」のURLを開き、サービスにログインする動作を登録していきます。
まず、ここからの動作は一行ずつ繰り返し行いたいので、「For Each」を用いた繰り返し処理を実装します。
アクション一覧の中から「Loop」→「For each」をドラッグ&ドロップします。
「反復処理を行う値」を、先ほど生成した変数「%ExcelData%」とします。
ここで各列の値を保存する変数「CurrentItem」が生成されたことを確認してください。
前置きが長くなりましたが、ここから「For Each」の中にブラウザでの処理を書き込んでいきます!
「Webオートメーション」→「新しいChromeを起動する」をドラッグ&ドロップし、初期URLを設定します。開いたブラウザは「Browser」という変数に格納されました。
次に「Webレコーダー」を利用します。実際の業務と同じようにクリックや文字入力をしているだけで、いつのまにかアクションが完成している優れものなんです!
画面左上の地球儀マーク、「Webレコーダー」をクリックします。
「使用するブラウザーインスタンス」ではChromeを選択すると、ブラウザ画面と「Webレコーダー」が表示されました!
Webレコーダーで「記録の開始」をクリックすると、「記録の一時停止」をクリックするまで、ブラウザ上でのクリックや文字入力といった動作を記録し続けてくれます。赤枠で囲われている部分が記録の対象になります。
例えば、今画面上に赤枠で囲われている「ログイン」をクリックすると、Webレコーダーには「Webページの要素をクリック クリックUI要素で a 画面上:Recording」と記録されます。
「ID入力」の記録方法も確認しましょう。「メールアドレス」の欄にカーソルを当てると、赤枠と共に<input: text>という文字列が表示されます。メールアドレスを入力して、Enterまたは画面上の適当な場所をクリックします。
すると、Webレコーダーには「Webページ内のテキスト フィールドに入力 入力 input18 画面上: Recording 対象 Aa テキスト XXX@YYY.com」と記録されました。「パスワード入力」も同様に行います。
なお、正しく操作した場合でも反応が悪くうまく記録できてない場合があります。毎操作ごとにWebレコーダーに記録されているか確認してください。また、カーソルを当てても赤枠が表示されない場合は、一旦画面上の適当な位置をクリックしてください。その後不要なアクションを削除すれば問題なく記録できます。
Webレコーダーを一時停止し、保存します。開発画面に戻ると…
ブラウザ画面で動かした通りに登録されていますね!
これでURLへのアクセスからログインまで実行するシナリオができました。
5 テキストをブラウザ上のフォームに転記し、作成・保存
Webレコーダーの使い方が分かったところで、請求書作成・保存のページに移ります。先ほどと同様に、ブラウザ上で実際に操作しながらアクションを記録していきましょう。
入力するテキストは後から変数に置き換えますが、ここで実際にテキストを入力しておくと、後の編集が楽になります。
ブラウザ上で登録したアクションが無事開発画面に反映されたことを確認し、それぞれの入力内容を指定していきます。
「Webページ内のテキスト フィールドに入力する」を開くと、「テキスト」の所に先程入力した文字列が記載されているはずです。ここを変数に置き換えます。
先程「CurrentItem」という変数を生成したことを覚えていますか?実はExcelシート内の1列目のデータが「%CurrentItem[0]%」に、2列目のデータが「%CurrentItem[1]%」に、3列目のデータが「%CurrentItem[2]%」に保存されています。私達が「1, 2, 3,...」と数えるのを、プログラムは「0, 1, 2,...」と数えると考えてください。
今回はExcelシート1列目の「取引先」の情報を入力したいので、「%CurrentItem[0]%」と入力しました!
他も同様に設定し、請求書を作成するシナリオができました。
6 テキストをブラウザ上のフォームに転記し、送信
請求書の作成と同じ要領で、請求書を取引先に送信するシナリオを作成します!
ちなみにシナリオの中に「Wait」というアクションを入れています!
時々RPAの実行速度が速すぎてページ遷移が追い付いていない場合があるため、5秒間動作を停止するようにしています。
ここまでで、すべてのシナリオが完成しました!
いざ、実行!
画面上の「▷実行」ボタンを押して、実行開始です!!
やったーーーーー!!!
無事実行が完了し、5件とも請求書一覧に反映されました。
Power Automate Desktopの激推しポイント
今回は請求書の作成・保存・送信の処理をPADにて実装しました。
感想について、一言で申し上げますと、
Win10ユーザーは今すぐインストールした方が良いです!
PADの激推しポイントを3つ挙げるとするなら…
■ 今すぐに始められる!!
PADの最大の差別化点といったら、何といっても無償提供されていることですよね。導入する際も追加でアカウント登録をする必要がなく、インストールしてポチポチするだけなので気軽にできます。
また、ビジネスで用いるだけでなく、個人使いできることも魅力です!大学生の筆者は被引用文献調査の自動化に使っています。また、ピザやフライトの予約に使っている方もいらっしゃるようです。使い道を考えるだけでワクワクしますね!
■ 情報量が多く独学が容易!!
Microsoft社の製品とだけあって注目度が高く、ブログ記事や公式ドキュメント、Microsoft Learnにて公開されている学習教材、事前に用意されているテンプレート等、ネット上に情報があふれています。先人たちの知恵を借りれば、簡単なシナリオなら問題なく作成できちゃいます。
■ とにかく高性能!!機能の豊富さと実行速度の速さ!!
PADに標準搭載されたアクション数は、何と400種類以上もあります。連携しているクラウドサービスも無償版から豊富に用意されており、プランによっては大体のことができるのではないか、と思います。
また、実行速度が明らかに人間の操作よりも速いです。サクサク動きます。自動化万歳ですね!
Power Automate Desktopの注意点
そんな素敵な所がたくさんのPAD無償版ですが、注意点があります。
■ 十分なサポートを受けられない
サポート体制はコミュニティと支援付きサポートの2つです。注意すべき点として、無償版ではマイクロソフトサポートに直接問い合わせすることができません。コミュニティは利用できますが、やりとりが全て英語であること、必ずしも回答がもらえるわけではないことに注意してください。
■ 管理機能・野良ロボット対策が利用できない
有償プランでは、新しいフローと実行ログは自動的にPower Automate Serviceに保存され、フローの集中管理や環境構成、セキュリティ設定、実行ログや実行状況の参照が可能ですが、無償版には用意されていません。
■ クラウド版Power Automateとの接続ができない
Power Automate Desktopはデスクトップ型のRPAです。小規模の処理しかできない、ロボット稼働中はPCを使用できない、といった制約があります。クラウド版は有償プランとなります。
なお、無償版と有償プランの比較はこちらのサイトが便利です!▷link
■ 操作の安定感がやや気になる
これはおそらく有償無償は関係ないと思いますが、Coopelと比較するとやや操作の安定感のなさ(原因不明の失敗多発)が気になりました。
まとめると、無償版のまま企業単位で用いるのは難しいと感じました。ただ、個人単位でゼロから始めようとしている人、自力で調べて解決できる人にとっては、最適のツールなのではないでしょうか!
いかがでしたか?
ここまでお読みいただきありがとうございます!
今回の実装は株式会社ディー・エヌ・エーさんの「Coopel」でも試しています。こちらもとっても素敵なツールです!比較検討されたい方は、ぜひご覧ください☆
DXツール調査依頼、募集中です!
DXツール調査隊では、読者の皆さんからいただいたご質問に、note記事にて回答させていただきたいと思っています!
「タスク管理がうまくいかない」「今最もアツいRPAを教えてほしい」等、漠然とした質問で大丈夫!DX初心者の調査隊員が皆さんに代わって調査いたします☆
以下の手段のどちらかから、お気軽にお問い合わせください!
①件名を「DXツール調査依頼」、本文に具体的な調査事項を記載いただき、virtual-dx@rit-inc.co.jp宛にご連絡いただく。
②DX調査隊シリーズのnote記事にコメントいただく。
DXツール調査隊についてもっと知りたい方は、こちらをご覧ください!
みなさんのご依頼、お待ちしています!
この記事を書いたのは?
#業務効率化 #RPA #Windows #Power Automate #PAD #社内改善 #DX #デジタルトランスフォーメーション #ITコンサル #DXコンサル #DX人材 #コンサルティング #デジタル化 #Windows10 #DXツール #DX調査隊 #DXツール調査隊 #おすすめツール
この記事が気に入ったらサポートをしてみませんか?