RPAとマクロの違いを表で比較!どちらで自動化すべきかまでアドバイス

RPAで色々な業務を自動化できるらしいけど、自社ではマクロも使っているし、実際のところ何がどう違うのか?どれを使うべきか?
このような疑問は自社でマクロを使用している人なら必ず思うことでしょう。
最近RPAが注目されているのは明らかにマクロよりも優れている点があるからなのです。

RPAとマクロの大きな違いは3つです。
・RPAはマクロ以上に様々なアプリケーションと連携できる
・RPAはプログラミング知識のない人でも業務を自動化できる
・RPAで大量のデータを扱ってもPCがフリーズしない

とはいえ、今使っているマクロを全てRPAに置き換えるべきかというと、そうではありません。
この記事でRPAとマクロの違いを具体的に理解し、どの業務に何を使うべきかの判断の参考にしてください。

 

1 RPAとマクロのできること・できないことの比較

RPAとマクロの主な機能の比較をしました。

RPAとマクロの比較表

RPAは、デジタルレイバー(仮想労働者)とも呼ばれ、「人間が行う作業を自動化するためのツール」として開発されており、人間が画面上で行う作業のほとんどは自動化することができますまた、マクロよりも設定に必要な知識のハードルが低いことも特徴です。

ただ、RPA自体に表計算機能はないのでExcelなどの表計算ソフトが不要になるわけではありません。

※VBA(Visual Basic for Applications)とは?
VBAとはMicrosoft製品で使われるプログラミング言語のことです。
マクロとは様々な処理を自動化するExcelの機能のことです。
VBAはExcelを通常の表計算の自動化以外に、ボタンを設置したりwordと連携させたりと、他の機能を使用する場合に必要となります。

マクロを使うには2パターンあります。
①VBAを使用して処理手順を記述(プログラミング)する
②レコーディング機能を使って実際の処理手順を記憶させる

①は通常のマクロのように言語を書いていく処理が必要で相当な知識が必要となります。

マクロの画面

 

②はマウス操作で処理を記憶させることができるため、プログラミングするは必要ありませんが、自動化できる処理も限られています。

例えば、あるセルの値をコピーして他のセルにペーストする、という作業を自動化させたい場合、全ての手順をあなたが操作して記録させなければいけません。その際、間違った処理も記録してしまいます。これが数百回繰り返される作業の場合、果てしない労力になってしまいます。

レコーディング機能を使ってコピペを1回だけ記録し、繰り返し作業として複製することも可能ですが、そうなってくるとマクロを自分で書く必要があります。

VBAは使いこなすことができれば、webから情報を収集してExcelにまとめ、データを集計してパワポでレポーティングするなど、あらゆる操作を自動化できますが、難易度は非常に高いといえます。一方でRPAならはマクロよりも簡単に業務の効率化を図ることができます。

 

2 業務の効率化ならマクロよりもRPAが有利な3つの理由

ここでは業務の一部の自動化という観点だけでなく、実際に業務全体の効率化を行う上でマクロよりもRPAが有利な点を具体的にご説明します。

 

①マクロよりも自動化できる業務範囲が広い

当たり前ですが、自動化できる範囲が広ければ広いほど業務を効率化することができます。

私達は普段1つの業務を行うにしても多数のアプリケーションを使用して業務を遂行しています。例えばExcelで作成した表やグラフをWordに貼り付けて印刷・メールで報告したり、そもそもofficeソフトを使用せず、会計ソフトや顧客管理ソフト、グループウェアなどを使うということが多々あります。

ExcelやWordというのは業務遂行に必要な一作業のためのツールでしかなく、マクロを使っても大抵の場合、一連の業務の全てを効率化するのは難しいことも多いです。

RPAは画面上で行われる一連の作業を全て自動化できるため、人の代わりに一連の業務全てを任せることが可能です。

 

②現場の人でもカスタマイズしやすい

RPAはマクロよりもカスタマイズしやすいため、プログラミングの知識がない人でもカスタマイズすることができます。

マクロを使っている際によくある例として、「指定されている数値を変えたい、作業の手順が変わった」といったときにマクロの知識のある人に頼まないと変更できないという例がよくあります。

また「ほんのわずかな作業を自動化したい、少し試してみたい」といった場合でも、マクロを扱える人に頼みづらくて、結局自動化は進まないといったこともあるでしょう。

RPAでは自動化する作業手順のテンプレートが揃っていたり、自分で作業手順をフローチャートのようなイメージで組んだりするため、プログラミングの知識がない現場の人でも細かい調整が可能です。

 

RPAとマクロの作業組み換えの違い

また、プログラミングができる人に作業が集中しなくなることも業務の効率化としては嬉しいことです。

 

③数万を超える大量のデータの処理も高速で処理できる

マクロはPC上で動作するものであり、その処理速度の早さは使っているPCの性能に左右されます。ただ、一般的に数万個のデータを一気に処理するとなると、処理速度は極端に遅くなりExcelがフリーズすることも珍しくありません。最悪の場合PCがフリーズすることもあります。

一方、企業で使用されるRPAはサーバー上で動作するものが主流のため、処理速度はPCの性能ではなく、サーバーの性能に左右されることになります。
基本的にサーバーは大量のデータを処理することを想定されているため、フリーズすることは滅多になく、大量のデータも高速で処理することが可能です。

 

3 マクロ・RPAどちらで自動化すべきかを見極める

一業務を全体的に効率化させるならRPAをおすすめできますが、だからといってマクロを完全に否定するわけではありません。
マクロにはマクロの強みを活かしてRPAと両立させていくのがベストです。

1つの基準として、Excel内で複数の計算処理をする場合はRPAよりもマクロを使った方が良いでしょう。
Excel上での計算もRPAに覚えさせることは可能ですが、複数の計算をするとなると、各工程で関数を入力して覚え込ませる必要があります。

そうなると、結局マクロでコードを書く以上に労力となることもあるため、マクロの知識がある人はマクロの使用を検討しましょう。

また、webの情報を取得するなどといった他のシステムと連携したプログラムを組む際は、やはりそれに適したプログラミング言語がありますので、VBAで大抵のことが自動化できるからといって、それに頼りすぎると逆に効率が悪くなってしまう可能性もあるので注意が必要です。

 

今回のまとめ

マクロとRPAは自動化できる作業の幅と設定の簡単さ、処理速度という点で大きな差があります。RPAはそもそも自動化のためのツールとして開発されており、今後益々拡大していくジャンルなので、マクロに固執しすぎることなく早いうちからRPAに親しんでいたほうが良いでしょう。

その上で、表計算上の処理はマクロ、他アプリケーションとの連携が必要な一連の業務はRPA、というようにツールを賢く使い分けましょう。