RPAは、ただのマクロか?違いは?について現役エンジニアが解説

RPAに関するインターネット検索ワードの中で、「RPA ただのマクロ」「RPA マクロ 違い」で調べられている件数は、毎月多いです。

  • 近年の業務自動化の代表格であるRPAは、ただのマクロなのか?
  • RPAとマクロの違いは?

今回はこのテーマで記事を書いてみます。

RPAはただのマクロか?

結論から言うと「RPAはただのマクロ」という表現は的を射ていると思います。
ただのという表現は、RPAを小馬鹿にしているようで、適切ではないのかもしれません。

下記にわたしの見解で説明します。

RPAの初印象

プロフィールでも紹介している通り、わたしはRPAの黎明期から様々な立場で携わっていますが、実際にRPAのエンジニアになったのが、2019年頃。

それまでは、RPAのユーザー部門やExcelのマクロ(VBA)を活用した効率化に取り組んでいました。そして、わたしが初めてRPAに触れたときの印象が「RPAはマクロと一緒だ」というものでした。

そのため、「RPAはただのマクロ」という意見に対しても、共感します。

「ただのマクロ」の真意

もちろん、実際にはRPAとマクロ(VBA)では自動化の範囲も異なってくるのですが、「ただのマクロ」と言われる理由は、十中八九、下記の通りです。

  • マクロ(VBA)=プログラミング
  • RPA=プログラミング

これが「RPAはただのマクロ」の真意です。

つまり、マクロもRPAも、根幹はプログラミングなのです。

RPAは、プログラミングの知識が不要と誤ったPRがされることも多いのですが、実際はプログラミング知識が必須です。(当サイトでは飽きるほど述べています)

マクロやプログラミングの経験者が初めてRPAに触れると、「結局、RPAってマクロと一緒じゃん」と感じる方が大半なのでしょう。

要は「プログラミングコードを使うか使わないか」の書き方の違いだけで、プログラミングをすることには変わりないのです。

マクロ(VBA言語)
RPA(UiPath)

RPAの価値は低いのか

「ただのマクロ」と表現してしまうとRPAの価値が低いようにも思えますが、そうではありません。

RPAはプログラミングをビジュアル化したツールであり、根幹はプログラミングですが、直接、プログラミング言語でコーディングするよりは、易しく扱うことができます。

また、プログラミング言語に精通していなくても、RPAの視認性は高いです。(ブロック型のため)

コードだけよりも視認性に長ける

正しく理解することで、充分な価値を発揮するポテンシャルがRPAにはあります。

RPAとマクロとの違い

この章では、RPAとマクロとの違いについて、もう少し詳しく説明します。

自動化の対象範囲

基本的に、マクロ(VBA)はExcel等、MicrosoftのOffice製品のみが自動化の対象ですが、RPAはOffice製品を含めたパソコンのデスクトップ全体を自動化することができます。

そのため、汎用的な経理・給与システムでも、社内でカスタムオーダーした特別なシステムでも、自動化の対象として扱うことができます。

基本、独自システムでもOK

それらを操作するための技術・工夫が、通常RPAには搭載されているのです。

実はマクロ(VBA)のほうが高速

ここは予備知識として紹介します。

マクロ(VBA)はExcelに基本機能として搭載されており、別料金は発生しません。つまり、Excelが使える環境であれば無料で使うことができます。(Web版のExcelを除く)

年間数十万円のライセンス費用が発生するRPAと、基本機能として無料で使えるマクロ(VBA)では、RPAのほうが高性能のように思えるかもしれませんが、実はExcel内の作業に限定すれば、マクロ(VBA)のほうが高速かつカスタマイズ性も高いです。

マクロはVBAという生粋のプログラミング言語のため、難易度こそ高いものの、性能や自由度は遥かに上なのです。