VBAはプログラマーじゃない?良い点悪い点や将来性についても!

VBAはエクセルなどのMicrosoft Office製品上で動かせるプログラムです。

昔からある言語ですが、業務効率化・自動化が求められている昨今、積極的に取り入れようとしている企業が増えています。

また、プログラミング初心者だが何か業務に役立つスキルを身に着けたいという個人にとっても、身近な業務で使いやすいVBAはよく選ばれています。

今回の記事では、

  • VBAはプログラマーじゃないと言われる理由
  • VBAはプログラマー良い点悪い点
  • VBAはプログラマーの将来性は?

について紹介します。


VBAはプログラマーじゃないと言われる理由

理由①:Office製品上でしか動かない言語であり、他のアプリケーションを動かすことができないから

VBAは圧倒的にExcelでの利用率が高く、WordやOutlookで使っている人は少数派でしょう。

つまり、エクセルを動かすための言語としての存在しているようなものです。

しかも、VBAはあくまでMicrosoft office製品内で利用できる言語であり、他のアプリケーションを動かすことはできません。

このことから、あくまでExcelを利用する事務作業者やプログラミング初心者のための言語であり、システムを作るものではないという認識が一般的です。

そのため「VBAができるからと言って、プログラマーとは言えない」と考える人が多くいるのです。

理由②:本気でプログラマーになりたいなら複数言語を習得する必要があり、VBAだけできても意味がないから

先述した通り、VBAはできることが限られています。

フリーランスで案件を取りたいと思っても、VBAしかできないとなると応募できる案件が自然と少なくなります。

本気でプログラマーとして食べていきたいと考えているならば、複数言語の習得は必須です。

自分が何をしたいのかによって学ぶべき言語が変わってきますので、しっかりと考えた上で取り組む必要があります。

会社に入ってソフト開発に携わる場合も同様で、VBAができてもさほど意味はなく、C言語など開発現場で実際に使用されている言語が理解できないと意味がありません。

VBAはプログラマー良い点悪い点

メリット①:Microsoft Office製品は世界中で使用されている事務作業ソフトのスタンダードであるため、VBAは早々になくなることはない

できることは限られているVBAですが、その基盤であるOffice製品のシェア率は依然として高く、需要は今後も続くと考えられます。

このため、VBAプログラマーとしての仕事も早々になくなることはありません。

Microsoft Office製品は海外でも広く使用されており、日本国内でも大企業を中心に事務作業ソフトのデファクトスタンダードとしての地位を確立しています。VBAはMicrosoft Office製品で使用できるプログラミング言語であり、広く事務作業を効率化することに役立ちますので、一度スキルを習得しておけば、さまざまな企業で業務に役立てられる可能性があるでしょう。

引用元:レバテック

メリット②:RPAと組み合わせることにより、業務自動化、複雑な処理が可能になる

VBA単体では連続でできる処理が限られてしまいますが、RPA(ロボット)を使用して作業の流れをつなぐ工程を代行させることによって、人がやっているのと同じように業務を自動で薦めることができます。

RPAの知識を習得すれば実現できることの幅が広がりますので、とれる案件が増えることになります。

RPAとはRobotic Process Automationの略で、PCで実施する事務作業など一連の作業を自動化できるソフトウェアロボットのことです。RPAを用いると、簡単な操作で作業を自動化できるようになりますが、VBAと組み合わせることで、より複雑な処理を効率的に自動化することが可能になる場合もあります。

引用元:レバテック

デメリット①:Googleなどの競合他社からシェアを奪われた場合、VBAの必要性が薄れる

現在、Googleスプレッドシートなど、無料でクラウド上で使用できる事務作業ソフトが増えています。

今流行のノーコードツールで作成したものともGoogleスプレッドシートは相性が良く、活用される場が日に日に増えていっています。

現在は強固なシェアを持つOffice製品ですが、長期的な目で見たときにいつまで使われるづけるのかと言う点を考えると、VBAを専門とすることにはあまりメリットがないと言えます。

デメリット②:他言語のプログラマーと比較して年収が低い

VBAプログラマーは他言語のプログラマーと比較すると年収が低い傾向があります。

これは人材市場を考えると分かりやすいです。

現在の開発現場で主流の言語を使える人=求められているIT人材であり、限られた人材をめぐって会社間での獲得競争になります。

より良いIT人材を確保するためには給与を高めに設定して、魅力的な処遇であることをアピールする必要があります。

ソフト開発では使用されないVBAは世間的には市場価値はあまり高くなく、他多言語プログラマーの方が自然と年収が高くなるのです。

そもそも職業プログラマーとしてVBAをメインでやっている人は限られています。

副業でVBAプログラマーをする場合も同じで、クラウドソーシングサイトなどから案件を取ろうとしても、1つの案件に対する倍率が非常に高く、受注につなげるのはなかなか難しい状態です。

また、案件が取れたとしても、クラウドソーシングサイト自体の単価が低いこと、VBA案件の高単価案件が少ないことから、効率はあまり良いとは言えません。

VBAはプログラマーの将来性は?

将来性を重視するならば、VBAプログラマーはあくまで慣れるまでの初期段階としておき、複数言語が扱えるプログラマーになるべきでしょう。

VBAプログラマーで1本で食べていくというのはかなり大変です。

2022年3月にTIOBE Softwareから公開されたプログラミング言語ランキングでは、以下の順位になっていました。

これは複数の検索エンジンの検索結果から、どれくらい話題になっているのかを集計した内容になっています。

1位はPythonで、以前から高順位に位置しています。C言語、Javaも同様です。

このトップ20にはVBAはなく、昨今話題の言語と言う認識は世間的にはないことが分かります。

順位プログラミング言語インデックス値推移
1Python14.26%
2C13.06%
3Java11.19%
4C++8.66%
5C#5.92%
6Visual Basic5.77%
7JavaScript2.09%
8PHP1.92%
9Assembly language1.90%
10SQL1.85%
11R1.37%
12Delphi/Object Pascal1.12%
13Go0.98%
14Swift0.90%
15MATLAB0.80%
16Ruby0.66%
17Classic Visual Basic0.60%
18Objective-C0.59%
19Perl0.57%
20Lua0.56%
引用元:TECH+

別のランキングでも同様の傾向がありました。

VBAはどちらかというとプログラミング知識がない人、これからプログラミングを始めていこうとしている人に向いている言語として紹介される場合が多いです。

VBAでプログラミングの基礎を学んでから、その基礎を多言語の学習に生かすというやり方をしている人もいます。

まとめ

VBAはプログラマーじゃないと言われる理由

理由①:Office製品上でしか動かない言語であり、他のアプリケーションを動かすことができないから

理由②:本気でプログラマーになりたいなら複数言語を習得する必要があり、VBAだけできても意味がないから

VBAはプログラマー良い点悪い点

メリット①:Microsoft Office製品は世界中で使用されている事務作業ソフトのスタンダードであるため、VBAは早々になくなることはない

メリット②:RPAと組み合わせることにより、業務自動化、複雑な処理が可能になる

デメリット①:Googleなどの競合他社からシェアを奪われた場合、VBAの必要性が薄れる

デメリット②:他言語のプログラマーと比較して年収が低い

VBAはプログラマーの将来性は?

VBAプログラマー自体にはあまり将来性がないため、あくまで慣れるまでの初期段階としておき、複数言語が扱えるプログラマーになるべきです。