RPAはエクセルマクロ(VBA)とは違うのだよ!

RPA RPA
RPA
RPA

RPA

らくだ
黒らくだ
プログラマーの黒らくだです
こんにちは。プログラマの茶らくだです。
今回は僕がご案内するよ!

最近よく耳にするRPA(ロボティック・プロセス・オートメーション)って、
昔からあるエクセルマクロと同じ? 違うというならどこが?という話を聞きます。

確かに、大雑把にくくると目的が似ているので、この疑問は自然かも知れませんね。
ここでいう目的の代表が「業務効率化」です。
両方とも、これを実現する為のツールなので、必然的に類似点が多いといえます。

 

この事が、両者の違いを分かりにくくしており、
ともすれば同一視される事があるのだと思います。

では、本当にRPAはマクロと同じで、単なるバズワードなのでしょうか?

 

この記事ではこの、RPAとマクロの違い
を考えてみます。

 


エクセルマクロ・VBAを改めて

両者の違いに触れる前に、まずエクセルマクロとVBAについてのおさらいです。

 

エクセルマクロは、言わずと知れたOfficeアプリケーション
であるMicrosoft Excelを自動化する仕組みで、エクセルの機能の1つと言えます。

 

この機能を使う為には、
専用のプログラミング言語で内容を記述する必要があり、
このプログラミング言語がVBA(Visual Basic for Applications)です。

VBAはその名前の通り、Visual Basicを元にした言語です。

Officeファミリー(Excel、Word、PowerPoint等)が
インストールされていれば使用できます。

これは以外と知らない人も多いんですよ。
ちょっと動かすと驚かれる事も多いので自慢できちゃうかもです!
※マクロの画面(VBEと言います)は、
 キーボードの「Alt と F11」の同時押しで表示できます。

 

マクロを使うと、セルのコピペの連続や、
数式をコピーして集計表を作成するといった手作業を、
ボタン一つで自動化するといった事が可能です。

また、Excelファイルだけでなく、
WordなどOfficeのファイル操作も容易です。

ただしあくまでも「Excelの機能として動く」
という制約がありますので、Excelが常に実行されている必要がありますよ。

 

なるほど!マクロはExcelの中で動くって事だね!

マクロの動作イメージ

この便利な機能は、一昔前のEUC(End User Computing)ブームも手伝い、
多くの企業で独自のエクセルマクロが作られて、今も使われています。

 

意外に思われるかも知れませんが、
パワポやOutlookでもマクロは使えます。
この場合、Excelでいうブックやシートが、スライドやメールに変わります。
でも、プログラムの書き方(文法や基本的な操作)は一緒です。
Excelは恐らく日本一使われているアプリケーションなので
マクロ = エクセル」が定着したのでしょうね。
そうそう!
僕なんかプログラマなのに、
プログラミングをしない日も不思議とExcelは使うんだよね。
何とか一覧、出勤台帳みたいなExcelファイルは、
きっとどの会社にもあるんじゃないかな?
だから、僕みたいな横着は、
繰り返し作業は、ついマクロを書いてしまうんだよね~
「Excelよ。後は任せた」って ;^^)

ここまででエクセルマクロは、
エクセルのマクロ機能だと言ったのには意味があります。

というのは、マクロ機能があるのはエクセルなど以外にもあるのです。

 

例えば、ワープロソフトで有名な一太郎の”一太郎マクロ“、
テキストエディタ秀丸の”秀丸マクロ“などは、独自のマクロ機能を持っています。

RPAってただのマクロ?

RPAは、Excelファイルだけを扱う場合
「ただのマクロ」と大きな違いを感じないかも知れませんね。

 

ですがその動作に着目すると、エクセルマクロとは大きく異なります。

エクセルマクロはExcelの中で動き、Excelファイルを自由に使えます。
ですが、パワポのファイル(PPTファイル)を使う時の動作を見ると

  • ExcelからPowerPointを実行する
  • PowerPointのマクロ機能を使ってファイルを操作する

という”2段階”の手順が必要です。

 

これに対しRPAは、自立して動くことができます。

そして、様々なファイルやExcel、Webブラウザといった
別のアプリケーションを操作することを前提に作られています。

これは、RPAツールの中には、
元々はシステム開発現場のテスト自動化ツールだった。
というものがあることからも見てとれるのではないでしょうか。

RPAは、Excelと同じレベルで独立したプログラムなんだ!!
なんかすごそうだね。(ウズウズ)

RPAの動作イメージ

RPAとマクロの使い分け

では、似たもの同士のRPAとマクロはどのように使い分ければ良いのでしょうか?

 

これまで見てきたように、両者の大きな違いはその動作の仕組みです。
「エクセルマクロはExcelの中で動く」でしたね。

 

この視点から、扱う対象を軸にとってみると、
一つのヒントになるかも知れません。

以下に代表的な自動操作の対象を挙げました。

扱う対象 エクセルマクロ RPA
Excelファイル
Wordファイル
メール △(Outlookに限る)
ファイルやフォルダ
Webブラウザ
Windowsアプリ ×

こうしてみると両者の特徴が現れてきます。

 

エクセルマクロは、
Excelファイルの扱いがダントツで得意です。(当たり前ですが)

扱う対象がWordやメールの場合はOfficeファミリーの為、
ファイルやフォルダはWindowsのライブラリを使用できる為不自由はありません。

 

ですが、WebブラウザやWindowsアプリの場合は途端に旗色が悪くなります。

そうなんだよ!
マクロでメモ帳とかを自由に操作できたら楽だと思うんだけど、
これが難しいんだ。
一方でRPAは、
初めから様々なものを自動操作する為に作られているので、得手不得手のブレがありません。
むしろ、マクロが苦手なWebブラウザや、
Windowsアプリの操作を得意としている
製品が多いと言えます。
このあたりは、後発の強みという事かも知れませんね。

まとめ

RPAとエクセルマクロの違いを見てきました。

まとめると、

  • Excelファイルだけを扱う場合は、エクセルマクロが使いやすい
    特に既存のマクロがある場合、わざわざRPAで作り直すのは無駄になってしまう可能性もあるので、きちんと検討したいものですね。
  • Excelを含めてOfficeファイルを扱う場合は、どちらでも可能
    エクセルマクロで出来なくはありません
    ですがプログラムが複雑になりがちなので、開発体制が整っている場合を除けば、RPAを検討する方が良さそうですね。
  • Webアプリや社内システムを扱う場合は、RPAのメリットを一番生かせる
    RPA一択で良いと思います。

 

このことからも、現在RPAが急速に普及している背景には、
従来は情報の保存場所がExcelの台帳管理していたものが、Webアプリが主流となったという、時代の流れが一因として挙げられるのではないでしょうか。

 


メルマガ&無料相談受付中

「らくだメルマガ」始めました。

不定期発信で、プログラミングを中心として、
IT業界の現場や開発の事情などをお伝えしたいと思います。

もちろん無料で、いつでも解約可能ですので
ちょっとしたブレイクに登録してみて下さい。

⇒メルマガをみてみる

らくだ
らくだ

只今、無料でご相談を受け付けています。
お気軽にどうぞ。

⇒お問い合わせはこちらまで

 

コメント

タイトルとURLをコピーしました