6
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

RPA (Robotic Process Automation)Advent Calendar 2021

Day 23

RPAとVBAって相性良いよね!と言うお話し

Last updated at Posted at 2021-12-24

【なぜ書こうと思ったの?】

全くの未経験から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になるよね!というお話でした。

6
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
6
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?