RPAとマクロの違いと活用方法を徹底比較!
2019年11月27日

RPAは作業の自動化という点で、マクロと比較されることが多い技術です。そのため、RPAとマクロは何が違い、どちらが業務の自動化に有効なのか、と疑問に思う方も多いでしょう。 そこで今回は、RPAとマクロの特徴・機能・相違点などを整理しながらそれぞれの長所と短所を解説します。 業務効率化を目指す上でどちらの機能をどのように活用するのが良いのか、参考にしてください。
RPAとマクロの違い
業務の自動化をRPAとマクロのどちらで行うか検討するうえで、それぞれの特徴や相違点を理解しておくことが必要です。 そこでRPAとマクロの特徴や自動化できる業務について、双方の違いを整理しておきましょう。
RPA
RPAの正式名称はロボティック・プロセス・オートメーション(Robotic Process Automation)です。ロボットとも呼ばれるソフトウエアを用いた業務の自動化技術を指し、パソコン操作を記憶したソフトウエア(ロボット)に定型作業を実行させることで、業務効率化を図ります。Windows環境で複数のアプリケーションやWebサイトなどのインターフェイスに跨る作業の自動化が可能です。
RPAツールで自動化したい業務を設計する際は、まずRPAツールに作業手順・ルール・実行スケジュールなどを記憶させます。 ロボットはそれらの指示に基づいて作業を再現する仕組みです。ロボットに設定する業務フローやルールはシナリオとも呼ばれます。
シナリオの作成やロボットへの記述は人間が行う必要がありますが、これらの工程に複雑なプログラミング知識は不要です。ユーザーは画面上を操作するだけで感覚的にロボットを設計できます。 また、一度手順を覚えさせたロボットは指定されたスケジュールや手順にのっとって作業を実行するため、人間が作業開始のアクションやロボット操作を行う必要もありません。
マクロ
RPAでは、人間が作成した手順・ルールなどが記述されたシナリオをロボットに覚えさせ、ロボットがシナリオの指示に基づいて作業を行います。 シナリオはRPAが行う操作手順が記述されたマニュアル、と考えれば理解しやすいのではないでしょうか。
RPAの設定や設計には、複雑なプログラミング技術は不要です。シナリオの作成方法はツールによって異なりますが、現場の非IT部門でも開発できるよう、画面上の直感的な操作でロボット開発ができるUI(ユーザーインタフェース)を採用した製品も多くリリースされています。
RPAの特徴
マクロは、Microsoft® Office®の標準機能で、Word・Excel®形式の単純作業をワンクリックで自動化できます。ファイルの新規作成やフォルダ保存、表やグラフの作成、書式設定、コピー・ペースト、検索・置換などの基本的な操作が対象です。VBA(Visual Basic for Applications)というマクロ機能を記述するプログラミング言語を用いれば、より高度な操作の自動化も可能です。
マクロでMicrosoft® Office®の操作を自動化する場合、Microsoft® Excel®であれば、まずシート上で操作を記録する必要があります。 このとき使用するのは、「マクロの記録」機能です。記録されたマクロを実行すると、操作が自動で再現されます。 マクロの記録と実行のいずれも手作業で行わなければならず、RPAのように作業の実行はすべてツールに任せれば良いというわけではありません。
RPAが業務効率化に有利な理由

RPAとマクロに共通しているのは、作業の記録やデータ集計ができる点です。ここではRPAにしかできない作業をご紹介しながら、本格的な業務効率化を図るうえでRPAを推奨する理由を解説します。
自動化できる業務の範囲が広い
RPAはパソコンで行う操作の大半が自動化の対象です。入力やマウスクリックにとどまらず、デジタル文書の画像・文字認識にもRPAは対応しています。 さらに紙媒体の読み込みも、OCR(光学的文字認識)と連動させることで自動化が可能です。
マクロで自動化できるのは、Word・ExcelファイルやInternet Explorer®などのMicrosoft®製品で行う作業に限定されますので、そもそも対応できる範囲に大きな差があります。
大量のデータを処理できる
RPAの導入形態にはサーバー型・デスクトップ型(RDA)・クラウド型がありますが、企業規模に囚われなければサーバー型を選択する企業が多数を占めます。サーバー上でRPAツールが稼働するため、パソコンのスペックに左右されることなく、大量のデータ処理も行えるのが特徴です。
一方のマクロの処理能力は、パソコンのスペックや処理するデータの容量に大きく左右されます。マクロで大量のデータを処理する場合、パソコンのメモリやCPUが圧迫されやすく、フリーズしやすいのがネックと言えるでしょう。
プログラミング知識がなくても使用・カスタマイズできる
RPAは画面上の操作でロボットの設計(手順の記録)ができ、複雑なプログラミング技術は要りません。マクロも基本的な処理なら「マクロの記録」だけで自動化できますが、高度な処理を実行するには、VBAの知識やプログラミングスキルが必要です。
他のシステム・アプリケーションと連携できる
RPAはWindows環境で作動する複数のアプリケーションと連動して作業を行うことが可能です。例えば、Word形式やPDF形式の文書のデータを、Webアプリケーションに転記することができます。
マクロはMicrosoft® Office®で提供される製品との連携が中心で、Webページや他社製ソフトウエアと連動させるには、VBAの知識とコーディング技術が必要です。
マクロによる自動化にもメリットがある
適用範囲の広さやアプリケーション間の連携など、RPAが圧倒的に優勢のようにも見えますが、マクロを用いた自動化にもメリットがあるのをご存知でしょうか。 ここからは、マクロならではの自動化のメリットをご紹介します。
Microsoft®製品との連携
マクロはMicrosoft®製品で行う操作の自動化に特化した機能です。また、Office®製品に限らずInternet Explorer®など、Windowsでよく使うアプリケーションと連携させることができます。使い慣れたWindows環境で作業を自動化したい方や、Microsoft®製品で自動化を完結させたい方には、マクロがおすすめです。
低コストで自動化
マクロで作業を自動化する際にかかるコストは、OSとMicrosoft® Office®製品やInternet Explorer®などのアプリケーションのライセンス費用のみです。ランニングコストは基本的にかからず、低予算で自動化ができます。
RPAを導入する場合は、ソフトウエアのライセンス費用やコンサルティングを利用した場合にはコンサルティングフィー、有償サポートを受ける場合のサポート費用などがかかり、そのほかに運用コストも発生します。 RPAと比較した場合、マクロは低コストであることや手軽さが特に魅力的に感じるかもしれません。
セキュリティ対策
マクロはWindowsやMicrosoft® Office®製品向けのパッチ(修正プログラム)を適用して、普段使用しているセキュリティソフトのパターンファイルの更新も欠かさないでおけば、ある程度のセキュリティが確保されます。 RPAの場合、セキュリティ機能を搭載したソフトウエアもありますが、RPAに特化したセキュリティ対策を行う必要があります。 対象業務の範囲が広い分、セキュリティの問題が発生した際のリスクも大きくなります。
RPAとマクロのどちらで自動化するか見極めが必要
RPAもマクロも単純作業を自動化できますが、それぞれに強みや適した業務があります。自動化をどちらのツールで行うか検討する際は、以下の比較項目に照らし合わせると良いでしょう。
- 自動化する業務の範囲
- データの処理量
- プログラミングなどの専門知識の有無
- 他社製アプリケーションとの連携の有無など
RPAあるいはマクロで自動化する業務の見極めには、株式会社テンダが提供するD-Analyzer(ディーアナライザー)の活用がおすすめです。 D-Analyzerは本来、RPA導入をサポートするプラットフォームとして提供していますが、業務の洗い出しの過程で収集されたすべての操作ログは操作分類で集計されるため、Microsoft®製品に限定される処理か、他社製品と連動する処理かを判別する上でも役立ちます。 前者であればマクロによる自動化、後者であればRPAの導入、というように業務の自動化に用いるツールの選定基準にも使えるのです。 また、RPAやマクロなどを活用して業務を自動化することだけが必ずしもゴールではないので、そもそも現状の業務フローが健全であるか、属人化してしまっている業務はないかなど、業務整理を行ううえでもD-Analyzerは活躍します。
そしてRPAの導入を選択する場合、D-Analyzerはさらに効果を発揮します。操作ログを基にRPAに適した業務を抽出するだけでなく、業務コストの算出や業務の削減率など、効果測定までの工程をD-Analyzerが自動化します。 業務の自動化するための工数やコストを削減して費用対効果をさらに高めるためにも、D-Analyzerの活用をぜひご検討ください。