支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡


世界中で活用されるMicrosoft Officeに実装されていることもあり、IT業界未経験の方でも比較的習得しやすいプログラミング言語なのが「VBA」です。勘のいい方なら、一般企業で働きながら、VBAを活用した業務効率化で業績に大きく貢献しているというケースも珍しくありません。しかし、いくらVBAのスキルを磨いても、しかるべき環境に身を置かなければ正当な評価は得られません。VBAエンジニアとして組織に所属する方を含め、フリーランスとしての独立を検討している方も少なくないでしょう。

そんなVBAエンジニアの方であれば、フリーランス向けのVBA開発にはどのような特徴があるのか?どのくらいの収入が見込めるのか?フリーランスとしてやっていけるのか?などの不安を抱えているのではないでしょうか?そこで本記事では、VBAエンジニアとして独立を検討している方に向け、フリーランス向けのVBA開発案件の市場動向、将来性などを解説していきます。

VBAの特徴

Microsoft Officeアプリケーションの操作を自動化することを目的に開発・カスタマイズされた「VBA」は、一般的なプログラミング言語とはやや赴きの異なる特徴を持っています。良くも悪くも、VBAの特徴を決定付けているのは、Excel、AccessをはじめとしたOfficeアプリケーション専用として「実装されている」ことに起因するものです。簡単に解説していきましょう。

学習コストが低い

冒頭でも触れたように、Excel・Accessの基本機能でもあるVBAは、学びやすく習得が容易、つまり学習コストを低く抑えられるのが特徴です。Excelがあれば、開発タブを追加してVBEを開き、標準モジュールを追加するだけでVBAのコードを書き始められます。マクロ・VBAに関連する参考書や解説サイトも数多く存在するため、迷うことなく習得を進められるのはもちろん、基本的な構文が同じVisual Basicの経験があればすぐに開発に取りかかれます。Excelのマクロ機能に慣れ親しんでいる方なら、ほかのプログラミング言語よりも簡単に習得可能なのが大きな特徴だといえるでしょう。

ExcelやAccessさえあれば環境を整えられるのは、開発コストの削減にもつながります。運用に関しても、Excel・Accessがあれば別途ライセンスを取得する必要もないため、開発後の運用コスト削減効果も得られます。

柔軟性が高い

VBAが、Officeアプリケーションの自動化を主目的としているのは事実ですが、ローカル操作にとどまらない高い柔軟性を持ち合わせているのも特徴のひとつです。たとえば、Excelに記載されたキーワードに合致する検索結果の一覧を取得するなど、IE・インターネットを活用した自動化を実現できるほか、基幹システムのデータベースから必要なデータだけ取得してExcelで加工する、PHP・Javaで書かれたプログラムを実行するなどもVBAで作成できます。VBAは高度な処理にも柔軟に対応できる、奥深いプログラミング言語でもあるのです。

最新の技術と相性がいい

近年注目の高まる技術のひとつに「RPA」がありますが、AIを含め、こうした最新の技術と相性がいいのもVBAの特徴です。一見、Excelのマクロ機能と競合しそうにも思えるRPAですが、RPAの操作対象でもっとも多いのがExcelです。RPAとVBAを組み合わせてより効果的で正確な自動化プログラムを開発する、といったニーズは少なくありません。AIや機械学習に関しても同じようなことがいえます。AIや機械学習で利用されるデータの加工にExcelが利用されるケースは少なくなく、ここでもVBAによる自動化が大きな効果を発揮するのです。

デメリット面は?

メリット面ばかりに思えるVBAにも、デメリット面がないわけではありません。Officeアプリケーションに実装されるVBAは、そのメリットと表裏一体の関係になる「大規模の開発には向いていない」「処理速度が速くない」「共有・複数人同時処理に弱い」などのデメリットがあります。Excel・Accessのバージョン違いによって処理結果が若干異なるケースもあり、プログラミング言語としての開発が停滞しているのも懸念事項です。

また、事務スタッフレベルからシステム開発レベルまで、プログラマーごとにスキルのバラつきが大きいという現実もあります。開発を依頼したい側にとっては、受託者の選定をどのように判断したらいいのか、迷ってしまうことも考えられます。

VBAにはどんな開発案件がある?

ここまでで解説してきたように、VBAには開発・運用コストが抑えられる、柔軟性が高い、最新技術と相性がいい反面、大規模開発・共有システムに向いていないという特徴があります。それを反映するように、小規模業務効率化システムの保守・修正から開発、業務システムを補佐する中規模サブシステム開発までのVBA案件が多いようです。開発案件の難易度もさまざまですが、ITに関連しない一般企業からの開発案件が多いのもVBAの特徴です。特に銀行・証券・会計などの金融関連が多く、潤沢な予算が割り当てられた開発案件も少なくありません。

VBA開発案件の市場動向

それでは、具体的にどのようなVBA開発案件が存在しているのか?市場の動向を掴むためにも、公開されているフリーランス向けVBA開発案件例を一部紹介しましょう。

広告運用会社向け業務システム開発
・必須スキル:VB、VBA、開発経験3年以上、Accessデータベースの管理経験
・待遇:〜60万円/月、スキル見合い

業務系システム運用補佐
・必須スキル:VBA、SQL、AccessVBA経験者
・待遇:〜40万円/月、スキル見合い、初心者可

RPAでの業務自動化案件
・必須スキル:VBA、VB.NET、C#.NET、VBA・VB.NET開発経験、RPAに興味のある方
・待遇:〜45万円/月、スキル見合い、初心者可

運送会社向け業務効率ツール開発
・必須スキル:VBA、AccessVBAでの開発経験
・待遇:〜55万円/月、スキル見合い

VBA開発案件の特徴

フリーランスエージェントによって案件数・報酬にバラつきはありますが、SEクラスのエンジニアであれば、月額50万円程度がVBA開発案件の相場だといえるかもしれません。案件数に関しては、Go、Scalaといった比較的希少なプログラミング言語と同等程度となっており、VBAのスキルを持つエンジニアの裾野の広さを考えれば、決して多いとはいえないでしょう。ほかのプログラミング言語と比較しても、案件相場が安めなのは、需要と供給の関係性もあるかもしれません。特に、クラウドソーシングなどで公開されているVBA案件は報酬の低いものが多く、高額案件には応募が殺到するため、結果的に報酬が抑えられてしまうことも珍しくないようです。

一方、だれでも気軽に取り組めるVBAは、奥深さを持つプログラミング言語でもあります。公開案件に「スキル見合い」の但し書きがある通り、高度なVBAスキルを開発に活かせるエンジニアであれば、年収600〜700万円程度は期待できるでしょう。

高単価のVBA開発案件を獲得するには?

高度なVBAスキルを持つエンジニアであれば、高単価の開発案件を獲得できる可能性は高くなりますが、それぞれの案件を見ていくと、高単価VBA案件には一定の法則があること気付きます。当たり前ですが、要求されるスキルが高くなればなるほど、VBAと組み合わせて活かせるスキルが多ければ多いほど、報酬単価は高くなる傾向にあるのがわかるでしょう。もちろん、開発スキルだけではなく、委託側企業の業界知識、チーム力を高めるためのコミュニケーション能力も求められています。具体的に解説していきます。

データベースのスキル

高単価のVBA案件の多くは、比較的規模の大きな企業のサブシステムとして、基幹システムなどと連携し、自動化を実現させる業務効率化システムです。つまり、基幹システムにアクセスしてデータ加工する高単価のVBA案件を獲得するためには、データベースに関連したスキル・知識が欠かせません。データベースアプリケーションである、AccessVBAのスキルを求める開発案件が多いのはこのためです。外部システム連携のスキルを持つVBAエンジニアはそれほど多くないため、データベース関連の知識を併せ持っていれば、アピールするうえでの大きな武器になるでしょう。

サーバ・インフラ構築の経験

Accessは優秀なデータベースアプリケーションではありますが、より規模の大きな業務システムであれば、Linux・MySQLなどのオープンソースで構築された基幹システムを利用しているかもしれません。Linuxをコマンドラインで操作するなどを含め、オープン系サーバ・インフラの構築経験があれば、より高単価・大規模なVBAプロジェクトに参加できる可能性が高まります。クラウド環境のLinuxサーバ、MySQLの操作スキルなど、クラウドにも対応できれば仕事の幅も広げられます。

RPA・AIの知識

VBAの特徴のひとつとして、最新技術との相性の良さを挙げましたが、それが反映されたかのように、RPA・AIに関連するVBA開発案件は増加傾向にあります。RPA・AIに関連する知識・スキルがあれば、高単価のVBA開発案件を獲得しやすくなります。まだまだ新しい技術であるRPA・AIを補完する意味でVBAが活用されているのは解説しましたが、それ以外に、Pythonが主流ながらVBAがAI開発に利用されることもあり、VB.NETと組み合わせたVBAでのRPA開発案件もあります。現実的なプログラミングスキルがなくても、VBAの実務経験、RPA・AIへの興味・知識さえあれば、参画できるプロジェクトも少なくありません。

VBAの将来性は?

デメリット面でも触れましたが、VBAには、事実上プログラミング言語としての進化がない、大規模開発・共有システムに向かないといった特徴があり、扱える人材数に対して相対的な案件数が少ない一面もあります。これらを根拠に、VBAの将来性を不安視する声があるのも事実です。

一方、世界中でもっとも普及しているビジネスアプリケーションがExcelであるのも事実であり、まだまだアナログ作業がなくならない現状では、VBA開発案件のポテンシャルは小さくないともいえます。事実、VBAの柔軟性を活かせる総合的なスキルを持つエンジニアであれば、高額単価の案件獲得は難しくないでしょう。現状に満足することなく、常にスキルを磨いていく努力と意欲さえあれば、フルーランスとして独立しても困ることはありません。

まとめ

スキルを磨いていけば、フリーランスとしての独立も難しくないVBAですが、ほかのプログラミング言語と比較して相場がやや低いのも事実であり、VBAのスキルだけでは高額案件を獲得しにくいのも事実です。たとえば、データ分析関連で主流ながらもエンジニアの数が足りない「SAS」などは、VBAのスキルがあれば習得しやすいといわれています。トレンドの移り変わりに対応するためにも、新たな技術・スキルに目を向けておくのが重要です。