VBAというプログラミング言語の難易度は?|VBAプログラマーが解説
公開日:2019年11月4日
VBA(Visual Basic for Applications)はExcelやAccessといった事務作業でよく使われるソフトのツール開発で人気の高いプログラミング言語です。
私も事務職でプログラミング未経験でしたが、VBAツールの便利さに興味を持ち独学で学んだ結果、VBAプログラマーとして仕事に従事するようになりました。
皆さんの中にもプログラミングを独学しようと思っていて、最初のプログラミング言語としてVBAを選択しようと思っている方もいると思います。
そこで今回は独学でVBAを学習した経験者の立場から、VBAの難易度について様々な視点から具体的かつ合理的にコメントします。
VBAというプログラミング言語の難易度は?|VBAプログラマーが解説
目次
1.プログラミング共通の難易度
最初にプログラミング自体の難易度についてコメントします。
私は、プログラミングの難易度は「アルゴリズムの思考についていけるかどうか」と「モチベーションが上がる要因があるかどうか」に依ると思っています。
1-1.アルゴリズムの思考についていけるかどうか
日本の義務教育でプログラミングが導入されたのは2012年に中学校で必修科目になったのが最初です。
2020年から小学校でプログラミングが義務教育として導入されます。
しかし中学校の必修科目とはいっても授業時間はほんの僅かであり、英語や国語、数学と比較する対象にすらならない状況です。
従って、義務教育を終えた後にプログラミング言語を学習しはじめるのが通常ですので、脳がよい意味でも悪い意味でも「固まった」状態でプログラミングに触れることになります。
このような固い脳の状態でプログラミングの思考(アルゴリズム)を受け入れられるかどうかによって、難易度は極端に変わると思います。
資格試験であるITパスポートや基本情報技術者の試験範囲にもアルゴリズムがあります。私は10年以上前に基本情報技術者の資格を取得しましたが、アルゴリズムの分野は正直なところ苦手でした。
従って、私の場合、アルゴリズム思考にはついていけず、この当時ではプログラミングの習得の難易度は高かったといえます。
1-2.モチベーションが上がる要因があるかどうか
そもそも大学時代にC言語の授業で真っ黒な画面に「Hello World」を表示させるプログラムを習った時に、自分が思い描いていた「ゲームを作る」といった夢とのとてつもなく大きなギャップ、そしてなんの感動も湧き上がってこない「Hello World」で、プログラミングを挫折した経験があります。
しかし、その後仕事でPCを使いExcelで事務作業するようになり、またインターネットを使ううちにITに慣れ、ホームページでブログを作りたいと思うようになり、HTMLとCSSを入門書を見ながら独学したことがITエンジニアになるきっかけとなりました。
現在はこのページのようにWordPressなどのソフトを使わずすべて手打ちでWebサイトを構築し運用できるようになりました。
C言語とHTML,CSSとの違いは「現実と理想とのギャップがC言語と比較にならない位に小さかった」ということです。
HTML,CSSの場合は入門書でもある程度のデザインでホームページを作れてしまいます。理想とそんなに遠くないことが現実にできてしまうということです。
私が現在もWebを続けていられるのはモチベーションが上がる要因があったからであり、そのため、Web技術を独学で学び続け技術レベルを向上させることができたことが大きい、ということになります。
またPCやExcel,インターネットなどを通じて、少しずつ私の脳もアルゴリズム思考に近づいていき、遅蒔きながらも脳が馴染み、ある時点でアルゴリズム思考を受け入れることができた結果、花が咲いた、と考えることができます。
ちなみにVBAについてもモチベーションが上がりましたが、VBAの場合は「便利なVBAツールで作業が楽になるなー」でした。
以上の通り、皆さんの中にもプログラミングに挫折した方がいるかもしれませんが、私のようにITに触れながら学習しているうちにどこかでアルゴリズムに感化される時が到来するかもしれません。
そしてそのきっかけとなるのはモチベーションが上がる要因がある場合だと私は思います。
2.VBAの難易度
次にプログラミング言語のうち、VBAの難易度についてコメントします。
複雑さ
VBAプログラミングは、プログラミング言語の中では簡単な部類に入るプログラミング言語です。
Javaのようなオブジェクト指向の概念はなく、C言語のようにポインタもありません。
VBAよりも簡単なプログラミング言語は、HTML、CSSやSQLだと思います。
しかしHTML、CSSはWebデザイン、SQLはデータベース操作に特化した言語であり、文法もVBAも含めたプログラミング言語とは大きくかけ離れています。
以上から一般的なプログラミング言語の文法を持ち、よく使われるプログラミング言語の中で考えると、VBAが最も簡単なプログラミング言語といえると私は考えています。
2-2.技術情報の入手のしやすさ
事務作業の効率化に最も使用されるプログラミング言語であるVBAは技術情報の入手が簡単です。
インターネットでも良質な入門サイトが見つかりますし、書籍も豊富にあります。
プログラミング初心者が挫折しない勉強方法
2-3.習得の機会
Excelを使用する場面は事務職でなくても、自宅でも使うケースは少なくありません。
習得の機会が多いということは、モチベーションが上がる機会も多いということですので、この点でもVBAの難易度は低く易しいプログラミング言語といえます。
3.VBAツール開発の難易度
プログラミング言語としてのVBAの習得は易しいとしても実際の開発が易しいとは限りません。
そこで次にVBAツール開発の難易度についてコメントします。
3-1.VBAの汎用性
VBAは事務作業の効率化で圧倒的に使用されることが多いです(最近はRPAもありますが)。
RPAとVBAの比較や今度のトレンドもコメント
しかし、VBAでできることは意外と広範囲に渡ります。もし広範囲でVBA開発に携わるとなると難易度は決して低いとはいえません。
予想以上に役立つ場面が多いプログラミング言語
3-2.開発方法
VBAツールの開発方法は他のプログラミング言語と異なる点があります。
それは事務作業の効率化で使用される場面が多く、Excelツールであること。また、依頼者がプログラミングやIT技術の知識がないこと。
このような理由から他のプログラミング言語にはない難しさがVBAツール開発にはあります。
書籍には載っていないことにも言及してコメント
4.VBA案件の仕事探しの難易度
最後にVBA案件の仕事探しの難易度です。
VBAを習得したとしてもVBAの仕事がなければ役に立たないということになり、継続した技術向上は難しくなり、難易度は高いと考えることができます。
では実際はどうなのかというと、派遣の仕事で需要が多くあります。
正社員やフリーランスの仕事もないというわけではありませんが、JavaやPython,JavaScriptといった人気あるプログラミング言語と比較すると少ないのが現状です。
一方で派遣社員としてであればVBA案件はJavaやPythonに負けず劣らずたくさん仕事が見つかります。
他のプログラミング言語との違いや日本情勢にも言及して解説
以上から仕事探しの面ではVBAの難易度は高くないと言えます。
まとめ
以上、VBAの難易度について様々な視点から具体的かつ合理的にコメントしました。
総合的に考えるとVBAの難易度は低く、易しいプログラミング言語といえます。
特に事務職を経験した方であれば、未経験からでも独学で習得してプログラマー、SEになれる可能性は相対的に高くなると思います。
最後までお読み頂きましてありがとうございました。
10冊まで同時に読み放題の電子書籍サービス(200万冊以上が対象)。
PC・ITカテゴリーの対象数は7,000以上。
スキル、ノウハウ吸収や話題作りにと、ライフ・クオリティを高めてくれます。
関連記事
初心者からVBAプログラマーになるまでの書籍を紹介
VBAエキスパートの難易度