BLOG
ブログ

RPAツールとExcelマクロの違い

2019年6月10日

RPAツールとExcelマクロの違いについてまとめていた記事を紹介したいと思います。

■Excelマクロとは?

マイクロソフト社のExcelに標準装備されている機能で、一連の複数作業手順を記憶して、自動的に実行させる機能のことです。

「マクロの記録」の機能を利用して一連の作業を記録し、同様の操作が必要になる度に記録したマクロの実行を行うことで、作業の効率化を図ることが可能です。

また、記録された操作は、VBA(Visual Basic for Applications)と呼ばれるプログラミング言語に変換されて記録されますので、VBAプログラミング言語を理解すれば、もっと高度な自動作業も可能となります。

■ExcelマクロやVBAの範囲
Excelにて操作記録ができる範囲はExcel上での操作だけとなります。

但し、先に説明したVBAにおいては、Excel以外にもAccess、WordなどのOfficeアプリケーションのほか、限定的ながら Internet Explorer など Office 以外のマイクロソフト社製のソフトウェアを制御する機能も持っています。これによりVBAによりプログラミングを行うことで、VBAをサポートするアプリケーション群の範囲において自動化を行うことが可能となります。

■RPAツールの範囲

RPAツールでは、ソフトウェアロボットの動作設定を行う機能、設定された内容に従ってロボットの実行を行う機能、ロボットの実行スケジュール管理や動作履歴管理などの管理機能などで構成されています。動作設定を行う機能では、幅広い範囲でWindowsアプリケーションやWebアプリケーションなどに対する操作を監視し、自動的に操作を記録する機能を持っています。

また、操作を記録するだけではなく、1つ1つの操作を定義する機能も持っているので、多種多様なアプリケーションやアプリケーション間での連携など、広い範囲での操作を自動化することが可能となります。

■ExcelマクロやVBAはプログラミングの知識が豊富な方向け
Excelマクロにおいては操作記録は全てVBAプログラミングとして記録されますので、対象ファイル名などを動的に処理するための設定や、判断や繰り返しなどを追加する際に、プログラミング言語にて処理を記述しなければなりません。

■RPAツールはプログラミングの知識が乏しくても理解しやすい
RPAツールでも、同様に判断や繰り返しを記述しなければなりませんが、Excelマクロと大きく異なる部分は、判断や繰り返しの記述をプログラミング言語にて記述させるのではなく、ツール内にある機能一覧から判断や繰り返しなど必要な機能を選択するだけで簡単に記述できるところにあります。さらに、ツールによって一連の操作や判断、繰り返しなどをフローチャート形式で記述できるようになっていたり、操作対象の情報を画面のイメージが表示される仕組みを持っているものもあるので、プログラミング知識が少ない人にも、かなり理解しやすい仕組みになっております。

■RPAツールはExcelマクロとは似て非なるもの
RPAツールは操作の自動記録と再現の仕組みを持つExcelマクロに似てはいるものの、対象とするアプリケーションの範囲や実用的な作業の自動化の作成容易性の面、メンテナンス性の面では大きく異なります。また、本来RPAが目指すものは、IT専門家による伝統的なプログラミングベースの自動化ではなく、IT知識の少ない業務部門スタッフにより、直観的な操作で構築可能な自動化です。ソフトウェアロボットに対し直観的な方式で短時間にトレーニング(構築)することで自動化を実現することにあると思われます。
さらにRPAは、人間が実施していた定型業務の自動化にとどまらず、ディープラーニングなどの機械学習やAIなどを組み合わせた、非定型業務の自動化や非構造化情報(自然文など)の対応や、将来的には高度な人工知能との組みまわせにより作業の自動化のみならず、プロセスの分析・改善、意思決定までの自動化を目指しているようです。
現時点では、定型業務の自動化が中心となりますが、その部分だけでも価値のあるソリューションであると思われます。

働き方改革によりRPAの目指すものが今後次々と広がっていくと感じています。

誰もが直感的な操作で自動化が実現できる方法が重要視されていのではないでしょうか。

参考記事