【なぜ書こうと思ったの?】
全くの未経験からRPAの世界に飛び込み3年超、こんな身近にある便利ツールとRPAを組み合わせて使えるのは本当に便利だし、VBAは敷居がそんなに高くないから導入しやすいし、何よりRPA自体の安定化稼働も図れるので一石二鳥では?と、RPA3年生は思った次第です。
【業務側にいたからこそ分かる。Excelは便利な相棒】
業務側が使用する頻度が高いのは「Excel」です。
現在もExcelで各種の管理や報告・集計等をまとめている所が多い筈です。
定型フォーマットの指定のセルに、数字や文字をを入力する。
入力した数値を計算して集計する。
関数を使う、ピボットテーブルを使う。
シートを分けて、文字色やフォントや罫線を変えるなどetc。
総務事務時代、本当に些細な事でもExcelを使ってました。
報告書等はWordで作成する事もありますが、大体はExcelです。
ないと仕事になりません、事務系職の大事な相棒。
【RPAとVBAの相性は抜群】
RPAは、言わずもがな「定型業務を自動化」する事に優れています。
コマンド・アクション・ノード等と言った、既に用意されている「箱」へ、RPAの土台の「言語」に渡す「変数等」を設定し、処理が実行されます(と言う浅めな認識で生きてます)
一見、何でもできそうに見えますが、工夫しないと難しい部分もあり、実際には万能ではありません。
大事なことなので、再度…
RPAは万能ではありません。
苦手な分野もあります。
全てをRPAだけで終わらせる事は、少々危ういという実感を得ました。
そんな時に「VBA」が活躍しています。
決して難しい事はしていません。
「RPAとVBA」を使い分けて、最終的にRPAが処理を失敗せずに実行できるようにする為に「互いの得意な部分」を担ってもらっています。
◆VBAにお願いする作業
~主にExcelやファイルの加工~
・空白や不要な行列を削除する
・フィルタで、必要なデータのみに整える
・セルの罫線や文字・セル色を設定する
・項目・担当者・取引先ごとにシート分けする
・重複を削除する、並べ替えをする
・項目名の設定、抽出結果の入力行や列の挿入
他色々な小さい細かい事
RPAでのショートカットキーを使用した操作と言った、ちょっとした工夫や調整が必要な部分は、断然VBAのほうが速いし安定感があります。
表から指定条件でデータを抜き出す、条件によって文字や数値等を入力するといった「配列」の操作も、やはりVBAが速かったです。
(RPAで魅せる処理を組むのは好き、大好き)
【RPAとVBAのエラー・例外処理】
「VBAの属人化」というお話を耳にして思う事。
や、私はそんな難しい処理は組んでないんで、大丈夫っす!(まだまだ組めないよ!)
しかし、ある程度のエラー・例外処理は入れてます。
「フォルダ存在してないかも」
「指定データがないかも」
「そもそもファイルないかも」
「まさかのフォーマット変更かも」
「毎回項目数が変わってるかも」
想定するエラー・例外条件をコードの中に組み込んで「VBAのエラー表示が出ない」ようにしておいて、あとはRPA側の処理で補ったりしています。本当に使い分け。
◆最後に…◆
二つのツールを使い分けて、よりRPAの成功率が上がれば、使う側も作る側もHappyになるよね!というお話でした。