RPAの基礎知識

2024.11.29

RPA・VBA・マクロの違いとは?比較表でわかりやすく解説

RPA・VBA・マクロの違いとは?比較表でわかりやすく解説

オフィスワーカーにとって、PC上で行う作業やタスクを自動化し、業務の効率化を図ることは必須のことです。近年ではRPAが普及し、UiPathやWinActorといった知名度が高い製品だけではなく、新しいツールも登場。そして、今やオフィスワークの自動化ツールといえばRPAといえるほどの存在になろうとしています。

実際、日本における法人向けのRPAの普及率は上昇しており、2018年6月が22%、2019年1月が32%となっています。最初は特定の部署で導入し、運用がうまくいくと他部署や拠点にも普及が進むといった傾向が。
さらに、2020年以降は新型コロナウイルスの流行や在宅勤務の推進などにより、さらに業務を自動化・効率化を求める企業が多く、RPAの導入割合が高まると見られています。

しかし、従来から日本企業で幅広く使われているアプリケーションとして、Microsoft Officeシリーズがあります。これらで実現できるVBAやマクロも、作業を自動化できるツールとしてすでに馴染む深いのではないでしょうか。

今回は、オフィス業務を自動化できるRPA・VBA・マクロの違いや相違点、使い分けのポイントなどをご紹介します。

目次

    RPAとは

    RPA(Robotic Process automation)は、PC上で行われる作業を記録し、その内容をシナリオとしてロボットに記憶させ、ロボットが作業を自動的に行う仕組みのツールです。膨大な単純作業を短時間で処理できることが特徴となっており、日本では2010年代後半から大企業を中心に導入されはじめました。当初は製造業などで導入事例が見られるに止まっていましたが、近年では金融業・サービス業界・官公庁など幅広い業界で導入され、成功事例が見られる様になりました。

    また、近年のRPAのトレンドとしては経理業務など、特定の業務に特化したRPAも登場しており、これからはPRAの特徴に併せて導入し、効率化していくことが求められます。

    さらに、これからはAIやOCRなどのツールとRPAを組み合わせ、業務に関する深層学習をさせることにより、定型的な業務にとどまらず幅広い業務を代行させるということも実現できるのではないかと言われています。

    VBAとは

    VBA(Visual Basic for Applications)とは、RPAやマクロのようなツール・機能ではなく、プログラム言語の一種です。マイクロソフト社のMicrosoft Officeシリーズに搭載されています。

    VBAは、詳しく後述する「マクロ」と呼ばれる一連の作業を実施する機能を実現させるためのプログラム言語です。RPAはプログラミング言語の知識がなくても操作が可能であるツールもありますが、これに対してマクロはこのVBAを理解していないと構築できません。

    ただ、エクセルの機能に「マクロの記録」というものがあり、これを使えばVBAを使わずにマクロを実行できます。しかし、エラーが出た際にマクロを修正する際にはVBAの知識が必要であるため、マクロを使いたい場合はVBAを習得した方がよいといえます。

    マクロとは

    マクロとは、Microsoft OfficeやAdobe製品、Googleのスプレッドシート、ドキュメントといったオフィスワークで利用する様々なアプリケーションで利用できる機能です。

    マクロは様々なアプリケーションで利用できますが、オフィスでは特にMicrosoft Excelで利用される機会が多いです。なぜなら、マクロは数値の管理や加工と相性がよいからです。

    計算・表やグラフの作成・複数のシートにまたがる計算・進捗管理のためのガントチャートの作成などさまざまななどさまざまなことを行う際、その複雑な作業を自動化するために使われることが多いことから、エクセルマクロと呼ぶこともあります。エクセルマクロは、これらを行うための操作をプログラム言語に変換し、プログラムとして記録します。

    このように記録されたエクセルマクロは何度も繰り返して再現できるため、PC上で行う操作を自動化することができるのです。

    RPA・VBA・マクロの違いと共通点を比較

    それでは、RPA・VBA・マクロの共通点・相違点を確認していきましょう。

    パソコン業務の自動化

    RPA・VBA・マクロはどれもPCで行う業務の自動化を図るものです。売上や株価、受発注情報など、膨大な情報を効率的にミスなく入力・管理・可視化することに役立ちます。ただし、RPAはPC上の操作全てを自動化できるのに対して、VBA・マクロはMicrosoft Office製品のみが対象となっています。

    必要な知識

    RPAはPythonなどのプログラミング言語の知識を利用してロボットを作成するものもありますが、中にはプログラミングの知識を必要としないツールもあります。そのため、以前よりは比較的簡単にRPAを導入できるようになりました。

    しかし、どんなRPAツールを選ぶにせよ、部署や社内の業務を把握していなければなりません。なぜなら、ロボットに業務フローであるシナリオを覚えさせるという作業を行わなければならないからです。

    VBA・マクロを利用する際には業務フローまで覚えている必要はありませんが、VB言語の知識が必要となります。VB言語は理解するまでにある程度の時間やリテラシーが必要となりますので、導入の難易度は多少上がります。

    連携できる範囲

    RPAは連携できる範囲が広いことが売りのツールです。対象となる範囲はWEBシステム、アプリケーション前半、また社内で開発した独自システムも対象とすることができます。

    それに対して、VBAはMicrosoft製品やIEで行う操作が、マクロは基本的にMicrosoft製品のみが対象となります。

    処理速度

    RPAは処理速度が速く、短時間で大量のデータを処理できます。VBA・マクロの処理速度は、使用しているPCの性能による部分が大きいです。

    料金

    RPAは利用人数やサポート体制などにより、利用するための料金が異なります。0円~数百万円までの幅があります。

    それに対して、VBAはMicrosoft製品を利用するために支払う料金のみが必要となります。

    エラー時の対応

    自動化させた内容にエラーが発生した場合、RPAは業務範囲を理解していれば対応可能です。また、サポート体制の充実したツールを選択すれば外部のエキスパートの力を借りることもできます。

    VBA・マクロのエラーは、VB言語を理解していないと対応が難しいです。そして、基本的にはエラーとその解決方法を自分で検索し、対応するのが一般的ですので、VB言語に対する一定以上のリテラシーが求められます。

    セキュリティ

    セキュリティに関しては、どのツールも一定以上の高度な体制が構築されています。ただし、RPAは複数のツールやアプリケーションを使用すること、また業界によっては顧客の個人情報などを取り扱うことから、導入を検討する際には確認した方がよいでしょう。

    サポート体制

    RPAのサポート体制は、ツールによってさまざまです。Q&Aやコミュニティなどテキストベースでのサポートから、セミナーやコンサルティングなど学びの場を提供するもの、専任スタッフによる手厚いサポートなどがあります。希望する内容のサポートを得られるかを導入前に確認しましょう。

    VBAやマクロは、サポートと呼ばれる体制はなく、WEB検索や書籍などで自分で調べることが求められます。

    RPA・VBA・マクロの共通点・相違点を以下の通り表にして比較しました。

    RPA VBA マクロ
    パソコン業務の自動化
    必要な知識 業務の内容 VB言語 一部VB言語
    連携できる範囲 社内独自システムやWEBシステム、アプリケーション全般 マイクロソフト製品やIEでの操作など 基本的にマイクロソフト製品のみ
    向いている業務
    • アプリケーションを跨いでPC上で行う業務
    • 単純作業・定型業務
    • ルーティン作業
    • 大量のデータ処理
    • 転記作業
    • データの自動処理
    • レポートやグラフの自動作成
    • WEBデータの収集(スクレイピング)
    • エクセル上のルーティン作業
    • Officeアプリケーション内で完結する業務
    処理速度 早い パソコンのスペックによる パソコンのスペックによる
    料金 0円~数百万円まで Office登録費用 Office登録費用
    エラー時の対応 業務を理解していれば対応可能 VB言語を理解していないと対応不可能 VB言語を理解していないと対応不可能
    セキュリティ 要確認 高い 高い
    サポート体制 販売元に確認 WEB検索 WEB検索

    RPAの活用がおすすめのシーン

    それでは、RPAとVBA・マクロを比較した際に、RPAを活用すべきシーンはどんなものでしょうか。

    Microsoft Office製品だけで業務ができない場合

    オフィスで行われる業務の中で、Microsoft Office製品を利用した業務は大きなウェイトを占めています。しかし、近年では特定の業務に特化したツールやアプリケーションが登場しており、それらと連携して業務を進めることも多いのではないでしょうか。

    Microsoft Office製品だけを利用して行う業務を自動化させる際には、VBAやマクロを利用するのが効果的です。しかし、VBAやマクロはMicrosoft Office製品以外のツールやアプリケーションには対応していませんので、Microsoft Office製品とそれ以外の製品を連携させて行う業務を自動化する際には、RPAを活用することをおすすめします。

    VB言語の知識が無い場合

    VBAやマクロを利用する際には、VB言語の知識が必要です。これらの言語を理解するためには、書籍やツールを利用して独学するか、セミナーなどに参加して知識を習得する必要があります。一定の知識を得られたかどうかを証明する資格もあるほどです。

    このように、VB言語の習得にはある程度の時間がかかります。そのため、人員や時間的なリソースが不足している場合、すぐに自動化を進めたい場合には、RPAの中でもプログラミングの知識が必要ないツールやサポートが充実しているツールを選ぶのがよいでしょう。

    ただし、求人を出してマクロを組めるメンバー、VB言語を利用した経験のメンバーを雇い入れたりといった方法で部署や社内のリテラシーを高めることも重要です。しかし、知見のあるメンバーが応募してくるか、採用されるかなどは未確定ですので、既存のメンバーがVB言語を習得できる機会を設けたり、勉強や資格取得を奨励するなどして部署や社内のVB言語のリテラシーを高めましょう。

    サポートを受けたい場合

    ツールを運用している際に不明点やエラーが発生することもあります。その様な場合、VBAやマクロはすでにたくさんユーザーがいますので、WEBで検索をすれば疑問点は概ね解決します。言い換えると、自力で検索して答えにたどり着けない人は、これらのツールを使いことは難しいのです。

    ロボットを自作できるメンバーが不足しているなどの理由から、RPAの導入や運用に不安があるという企業も多いことでしょう。近年さまざなタイプのRPAツールが提供されており、中にはサポート体制が充実しているものもあります。

    具体的にはコールセンターや専業のサポートスタッフがいるなどの体制を構築しています。専門知識に不安がある場合には、この様なRPAツールを選ぶというのもよい選択といえるでしょう。

    3つを組み合わせることもおすすめ

    今回はRPA・VBA・マクロの違いや活用方法について解説しました。近年はオフィス業務も複雑化・多様化していますので、これらのツールから1つを選ぶのではなく、3つを併用することでより効率的に業務をすすめることができます。

    事前にこれらのツールを比較した記事や導入事例などを読み、業務の特性とツールの特徴を十分に理解した上で、より効率的な業務運営を実現させてください。