VBAとRPA | 違いや社内事情、使い分けなどについてコメント
公開日:2019年11月2日
現在の日本は少子高齢化や働き方改革というワードが示す通り、手作業からIT自動化への流れが進んでいます。
この流れは作業の効率化が求められる事務作業で顕著に見られ、事務作業のIT自動化の手段として真っ先に候補に上がるのがVBAとRPAです。
インターネットで情報を検索してみると様々な意見を見ることができます。
私は元々は経理など事務職でしたが、派遣の仕事でITスキルを段階的に高めていった結果、現在ではVBAプログラマー、SEの仕事を中心に働いています。
そこで今回は事務職からVBAプログラマー、SEにジョブチェンジした現場の開発者の立場から、VBAとRPAの違いや現在の社内事情、両者の使い分けなどについてコメントします。
VBAとRPA | 違いや社内事情、使い分けなどについてコメント
目次
1.VBAとRPA
最初にVBAとRPAについて簡単に説明します。
1-1.VBAとは
VBA(Visual Basic for Applications)とは、マイクロソフト社が開発したVB(Visual Basic)というプログラミング言語をベースに、ExcelやAccessを始めとするOfficeソフトに特化したプログラミング言語です。
ExcelやAccessをインストールしているPCであれば、どのPC上でもVBAツールを開発できます。
Office製品に特化しているということもあり、ExcelやAccessを使った作業のツール開発では他のプログラミング言語ではなくVBAが選択されます。
他にもマイクロソフト社のブラウザであるIE(Internet Explorer)の操作にも強く、WindowsPCを使用して事務作業を効率化するのであれば、VBAツール開発を行うのが、これまでの趨勢でした。
予想以上に役立つ場面が多いプログラミング言語
1-2.RPAとは
RPA(Robotic Process Automation)とは、「ロボティック・プロセス・オートメーション」、すなわち、業務効率化を目的としたロボット(IT)による自動化のことをいいます。
様々なRPA製品が存在しますが、共通するのは事務作業の効率化に適しているということです。
ExcelやAccessはもちろん、他のアプリケーション操作にも対応でき、広範囲の事務作業の自動化を実現できます。
プログラミングは行わないので、プログラミングを知らなくても、WindowsのようにGUI環境で分かりやすい操作画面上でマウスとキーボードを使いながらツール開発できます。
WinActorの概要や特徴など
1-3.両者の共通点と違い
VBAもRPAも事務作業の効率化ツール開発に適しています。
両者の違いはVBAはプログラミング言語であり、プログラミングの知識がないと開発できないこと。
一方でRPAはGUIで操作すれば裏で最初から実装されているプログラムが動作して、動作を実現してくれます。従ってプログラミングの知識は必要ありません。
しかし、RPAもGUIで操作できますが、思考はプログラミング言語のアルゴリズムと同じです。プログラミング言語のアルゴリズムとは、例えば「変数を設定し、変数に値を代入する」「条件分岐や繰り返し構文を利用する」「既に出来上がっている関数を利用する」などをいいます。
従って、RPAでもプログラミング言語の文法やコード記述の知識経験は必要ありませんが、プログラミング言語のアルゴリズム思考は知っておく必要があります。
また、RPAはVBAよりも広範囲のアプリケーション操作が可能です。
さらにRPAは操作ログを残すなど監査機能が搭載されているなど、セキュリティ機能が相対的に高くなります。特に有料ライセンスのRPA製品の場合には、インストールするPCは限られてくるため、さらにセキュリティ面では高くなるといえます。
一方でRPAは新しい技術のため、今後、使い手の教育が必要になり、時間とコストを要します。
使い方に関する情報も限られています。
国内最大シェアを誇るRPA製品はWinActorであれば、サポートなども充実しており使い方に関する情報も増えてきましたが、有料ライセンスが必要であるため、コスト面でVBAに劣ります。
WinActorの良いところ悪いところ、VBAとの比較など
2.現在の社内事情
私はVBA開発者としてエンドユーザーのオフィスに常駐することが多く、いろいろな会社で様々な意見を耳にします。
大企業グループで働くことが多いのですが、RPA製品が導入されていることは少なくありません。
使用状況は、部署やチーム毎に1台、与えられ、会社全体でRPAを推進すべく、部署やチーム毎にRPAツールを発表させて競わせる会社もあれば、部署やチームの意向を優先し、RPAを積極的に使う部署・チームもあれば、インストールPCが放置され全く使用していない部署・チームも存在するような会社など、様々です。
現在はどの会社でもIT自動化を推し進めるケースが多いですが、当然、手作業で事務作業を行っている場合もあり、「手作業派」「VBA派」「RPA派」を形成しています。
日本ではトップダウン主導ではなく、相対的に部署やチームの意見が優先される風潮があるため、会社の経営方針や戦略が浸透していない場合も多く、例えば、会社がRPAを推進していこうとしても、部署やチーム単位でみると、手作業派やVBA派が幅を利かせていることも当然のごとく見られます。
ガートナージャパンの発表によると、2017年のRPAは、「過度な期待のピーク期」に該当するそうです。
下記の記事で詳細をコメントしています。
RPAについてコメント
現時点ではRPAに期待はしているが、成功事例が多くないので、実際に「何を」「どの程度」やってくれるのかが見えにくい状況です。
以上から会社側でもRPAについて全面的にGoサインを出しにくい状況ではないかと推察します。
3.VBA開発者としてのコメント | 両方使ってみてから考えよう
インターネットで「RPA VBA」などで検索してみるとRPA寄りのコメント、VBA寄りのコメントと、様々な意見が飛び交っています。
私自身はVBA開発者としてこれまで仕事に携わることが多かったのですが、IT自動化の手段としてはVBAでもRPAでも両方使って、それぞれのメリットを活かすように使い分ければよいのではないかという意見です。
上述の通り、RPAで実現できることの事例が少ないので、現在は実際に社内で使ってみて実感するフェーズなのだろうと思います。
IT自動化の手段としてはVBAとRPAの両方を使っていき、例えば、当面は同じ業務に対して両方でツール開発を行い、比較して良し悪しを判断していく、というのもアリでしょう。
いくら営業コンサルやITエンジニアがRPAやVBAのメリットデメリットを説いたとしても「百聞は一見に如かず」の諺通り、RPAの事例が少ない以上、実際に社内で使ってみて判断するのが妥当ということです。
まとめ
以上、事務職からVBAプログラマー、SEにジョブチェンジした現場の開発者の立場から、VBAとRPAの違いや現在の社内事情、両者の使い分けなどについてコメントしました。
現在はIT自動化の流れになっており、VBAもRPAもどちらも未経験でも仕事に就けるチャンスがある時期だと思います。
RPAがトレンドキーワードになっているため、VBAは需要がないと考えやすいのですが、手作業からIT自動化への流れから、むしろVBAの需要は増えていくでしょう。
VBAの人気やRPAとの需要争奪戦もコメント
最後までお読み頂きましてありがとうございました。
10冊まで同時に読み放題の電子書籍サービス(200万冊以上が対象)。
PC・ITカテゴリーの対象数は7,000以上。
スキル、ノウハウ吸収や話題作りにと、ライフ・クオリティを高めてくれます。
関連記事
他のプログラミング言語にない特徴
Excel VBAを多面的に分析してコメント