VBAの仕事|将来性や現在の需要を具体的かつ合理的に解説
更新日:2019年11月6日
公開日:2019年10月6日
私はVBAプログラミングの仕事を行うことが多いことから、VBAに慣れ親しんでいます。
皆さんが普段仕事で使用しているExcelやAccessといったMicrosoft Office製品と最もマッチしたプログラミング言語がVBA(Visual Basic for Applications)です。
主に経理や人事総務といった事務作業用のExcelツール開発でVBAが使用されることが多く、開発者ではないユーザーもマクロ記録機能を使って、作業自動化していることも少なくありません。
このような便利なVBAですが、プログラミング言語としての人気は高くないといわれることがあります。
従って、仮にVBAプログラミングのスキルを習得しても「実際に仕事の需要はあるのだろうか?」「VBAスキルを磨いても将来、使用されない言語であれば意味がないかも」と思っている方もいらっしゃるでしょう。
そこでこのページでは、VBAプログラミングの実務経験者の立場から、VBAプログラミングの仕事ニーズについて、フリーランス、正社員、派遣社員、パート・アルバイトといった雇用形態別に、将来性や現在の需要にも言及して具体的にかつ合理的に解説していきます。
VBAの仕事|将来性や現在の需要を具体的かつ合理的に解説
目次
1.VBAの人気について
冒頭にVBAは「プログラミング言語としての人気は高くない」とコメントしました。
「人気がない = 需要が少ない」という関係式は成り立ちやすいため、まずはVBAの人気について統計データを紹介して、人気がない理由についてコメントします。
1-1.プログラミング言語の人気ランキングより
プログラミング言語の人気を調べるのに最も紹介される統計資料の一に「TIOBE Index」があります。
このランキングデータは、検索エンジンの検索結果から、話題になっているプログラミング言語をインデックス化したもの。
「TIOBE Index」を見ると、2019年10月現在で、Visual Basic .NET(VB.NET)が6位にランキングされています(Visual Basic(VB)も16位にランクイン)。
VBAの正式名称は「Visual Basic for Applications」ですが、この「for Applications」は「for Office」です。
従って、VBAとは「ExcelやAccessに特化したVisual Basic」をいいます。
このランキングの通り、Visual Basic自体は決して人気が低いということはありませんが、VBA単独ではランキング外(もしくはランキング対象外)になっています。
仮にVisual Basicに含まれているとしてもVisual Basicと一緒にして16位ですので、JavaやPythonといた人気プログラミング言語と比較すると人気がないということになります。
1-2.VBAの人気が低い理由
今までVBAプログラミングの仕事に携わった実務経験者として、コメントすると次の通りです。
(1)ITエンジニアとしての魅力に欠ける
VBAはExcelやAccessに特化したプログラミング言語です。
ExcelやAccessというと、ユーザーが使用する既に出来上がったアプリケーションのため、「アプリケーション自体を開発する」ITエンジニアとしてはVBAは魅力に欠けるということになります。
これは、VBAプログラミングで開発したものを「システム」「VBAアプリ」とは言わず、ExcelやAccessという既存アプリ上に実装することから「VBAツール」と一般的に呼ばれることからも、他のプログラミング言語とはITエンジニアの立場としては「ランクの低い」「軽く見られる」プログラミング言語ということです。
開発の際にも、他のプログラミングのように「要件定義→設計→実装→テスト→納品」といった開発プロセスを踏むことなく、口頭で「こういったものを作って」と言われて作って渡して終わり、というケースもよくあります。
ドキュメント化も行われないことが多い。
ExcelやAccessに慣れ親しんだユーザーから開発依頼を受けることが多いため、ITエンジニアが学ぶ開発プロセスの「作法」を無視して作業せざるを得なくなります。
以上から、ITエンジニアの醍醐味を味わえないVBAは、魅力に欠けるプログラミング言語ということです。
(2)事務作業に圧倒的な人気を誇り、他のプログラミング言語と競合するため
ITエンジニアの視点では人気がないVBAですが、皆さんもご存知の通り、事務作業ではExcelやAccessは日本で最も普及した業務系アプリケーションです。
VBA開発者ではなくても、Excelのマクロ記録機能を使って、結果としてVBAを使っている事務作業者も少なくありません。
このように「事務方が最も慣れ親しんでいるプログラミング言語」であるVBAの存在によって、事務作業の効率化を目的としてシステム、アプリ開発を行う場合に採用するプログラミング言語を検討する際には「VBA vs 他のプログラミング言語」という図式がよく見られます。
「システム開発」「アプリ開発」といったITエンジニアの仕事に繋がらず、Excel/Access VBAツール開発で済んでしまうケースも多く、VBAが他のプログラミング言語を使用するITエンジニアから嫌われる一因となっており、その結果、VBAは「ITエンジニアには人気がない」といえます。
2.VBAの将来性
以上の通り、VBAはITエンジニアには人気がないが、事務作業の効率化ツール開発では圧倒的な人気を誇る、ということが説明できました。
そこで、事務作業という領域に範囲を絞ってコメントしていきます。
ここでは、VBAの将来性について、「将来なくなる仕事」と「RPAの需要増加」という2つのトレンドワードに焦点を当てて説明します。
2-1.手作業 vs VBA vs RPA
事務作業の際に採用される手法は次の通りです。
- ・手作業
- ・VBA
- ・RPA
どの事務作業でも最初は手作業ですが、業務が拡大し効率化が求められるに従って、手作業からVBAやRPAによる自動化へ移行していきます。
社内でも手作業派、VBA派、RPA派がいますので、3つの手法はそれぞれ競合する関係にあります。
従って、事務作業についてVBAの将来性を考える際には、手作業やRPAの将来性も含めて比較しながら考えていく必要があります。
2-2.手作業の需要減少とVBA
2014年に「オックスフォード大学が認定 あと10年で「消える職業」「なくなる仕事」」といった記事が至るところで話題になったことを皆さんも覚えていらっしゃるでしょう。
この資料によると、事務作業の仕事はAIにとって変わられる可能性が高い仕事とのことです。
ただし、この予測資料に関する反論も沢山存在しているため、全てを鵜呑みにして信じるほどには信頼性の高い資料とはいえないでしょう。
しかし、AIやビッグデータ、IOT、RPAなど最近のITトレンドワードに見られるように、人間による作業からITによる自動化へのシフトは確実に進んでいるのは確かです。
言うまでもなく日本は少子高齢化が進んでいるため、社会的にも、このシフトは進める必要がある、という世論にもなりやすいでしょう。
残業時間を減らせるので、政府が推し進める「働き方改革」にもマッチしています。
従って、現在も手作業からITへの自動化が進んでいる事務作業ですが、将来的にもこのシフトは大企業だけでなく、中小企業も含めて加速することが予測されます。
そして、ITへの自動化の第一段階として考えられる最有力候補がVBAです。
以上から、今後、事務作業の効率化を目的として、VBAの需要は今後も増加していくと予想できます。
2-3.RPAの需要増加とVBA
一方で最近のトレンドワードであるRPAも、手作業からのシフトとして有力な手段です。
RPAの導入を推し進めやすい時代であるため、VBAからRPAへのシフトを行う企業も増えています。
従って、RPAの存在によって、VBAの需要が減少するという流れは確かに存在します。
しかし、RPAとVBAはそれぞれ強みがあり、特に他のアプリと連携せず、ExcelやAccessで完結するような業務であれば、VBAで実装しておく方がいろいろと便利な場合が多いです。
また、RPAであってもプログラミングを行ってカスタマイズする場合もありますが、例えば、「WinActor」という国内で最大のシェアを誇るRPA製品はVBSでコーディングします。
VBSはいくつかの例外を除けばVBAと同じ文法であるので、RPAの需要が増えたとしても実質的にVBAの需要はそこまでは減らないのです。
以上から、手作業からVBAへのシフトによるプラスの影響が、VBAからRPAへのシフトによるマイナスの影響を大きく上回ると予想できるので、将来的なVBAの需要はより増大すると考えることができます。
3.雇用形態別にみるVBAの需要
これまでの分析結果から、VBAの需要は多く、今後も増大することを説明してきました。
そこで次に、机上の空論でないことを確認するために、フリーランス、正社員、派遣社員、パート・アルバイトといった雇用形態別にVBAの需要について、他のプログラミング言語と比較することでコメントします。
3-1.フリーランスと正社員
フリーランスの案件についてはITエンジニアの仕事という側面が強いため、他のプログラミング言語と比較するとVBAの案件は驚くほど少ないです。
一方で正社員の仕事であれば、エンジニアと事務作業員の中間的な立ち位置の仕事として、VBA案件が見つかります。
しかし他のプログラミング言語と比較すると多くはありません。
次の表はリクナビネクストより単純にプログラミング言語で正社員の案件を日本全国を対象に単純キーワード検索した結果です(2019年10月6日現在の結果)。
プログラミング言語 | 案件数 |
---|---|
VBA | 115 |
Java | 1,014 |
JavaScript | 643 |
PHP | 851 |
Python | 490 |
VB.NET | 201 |
RPA | 314 |
VBA案件が他のプログラミング言語と比較して少ない理由は次の通り考えられます。
他のプログラミング言語の仕事は、継続して稼働させるシステム開発の案件であるため、長期雇用を前提とした正社員での雇用とマッチします。
しかし、VBAは単体のExcel/Accessツール作成で使用されるケースが圧倒的に多いため、長期雇用には仕事として繋がりにくいから以上の結果になっている、と推測できます。
3-2.派遣社員
一方で、派遣社員は契約を数ヶ月毎に更新する雇用形態であるため、VBAを使ったツール作成の仕事は派遣という雇用形態とマッチします。
派遣の仕事でVBAの仕事を探すと、Excel/Access VBAツールの仕事は沢山見つかります。
派遣の仕事探しサイトの「はたらこねっと」でプログラミング言語をキーワードとして日本全国を対象に単純検索した結果、求人数は次の通りでした(2019年10月6日現在の結果)。
プログラミング言語 | 案件数 |
---|---|
VBA | 456 |
Java | 665 |
JavaScript | 717 |
PHP | 497 |
Python | 357 |
VB.NET | 322 |
RPA | 186 |
以上の通り、JavaやPythonといった人気のあるプログラミング言語と比較しても遜色ないことから、VBAの需要は派遣の仕事で高いことが分かります。
3-3.パート・アルバイト
パート、アルバイトの仕事になると、VBAの仕事はほとんど見つかりませんが、これはプログラミングをはじめとするIT系の仕事全般に言えることであり、VBAに限ったことではありません。
まとめ
以上の分析からVBAは人気が低いわけではなく、むしろ事務作業では将来的にも需要は増大が予想される、人気のあるプログラミング言語であることが分かります。
特に事務職を経験してきた方にとっては、RPAと並び、ITエンジニアの領域に踏み込む第一歩としてオススメできるプログラミング言語です。
そして自分にマッチしていると思えば、同じくVB系のプログラミング言語であるVB.NETをはじめとする他のプログラミング言語を学習すると、経理や経営企画、総務人事、営業事務といった部署で使用される業務系アプリケーション開発のエキスパートへの道が拓かれるのではないでしょうか。
最後までお読み頂きましてありがとうございました。
10冊まで同時に読み放題の電子書籍サービス(200万冊以上が対象)。
PC・ITカテゴリーの対象数は7,000以上。
スキル、ノウハウ吸収や話題作りにと、ライフ・クオリティを高めてくれます。
関連記事
他のプログラミング言語にない特徴
予想以上に役立つ場面が多いプログラミング言語
初心者からVBAプログラマーになるまでの書籍を紹介
実証データを基に解説
どのプログラミング言語から勉強するか