今回の記事では、世界で最も利用者が多いプログラミング言語ともいわれるVBAと、近年、国内で人気ランキングトップクラスのPythonを比較してみたいと思います。
プログラミング言語は、VBAとPython以外にも何百種類もあり、それぞれ特化している分野や得意な分野というものがあります。そのため、単純に優劣を決めれるものではありませんが、「VBA Python」に関して、インターネット上の検索ニーズは高いのです。
厳密には、VBA Pythonの何が知りたいのか(難易度の差か、速度の差か、等)までは分かりませんが、いくつかの用途と学習に取り組むと仮定した場合のそれぞれの特徴を比較して、記事にしてみたいと思います。
VBAか Pythonか
まず、VBAとPythonのプログラミング言語としての基本的な特徴からいきましょう。
VBA
MSのOffice製品専用の
プログラミング言語
Python
汎用プログラミング言語
AIなど最先端分野で活躍
プログラミングスキルの習得
ここは当サイト特有の回答になるかと思います。
迷わずにPythonがよいと言いたいところですが、プログラミング入門用としてはVBAから学習することをおススメします。理由としては、VBAは身近なExcelに搭載されたプログラミング言語のため、学習用の題材を揃えやすいためです。
例えば、セルに今日の日付を表示させたり、文字を太字・赤字にするなど、お馴染みの操作をVBAで記述することができます。あくまでもプログラミングの入門用のため、感覚を掴んだら、より広範囲かつ将来性の高いPythonに進めばよいでしょう。
下記の記事で詳しく説明しています。
転職対策としての学習
これは複数の要因が絡む問題です。
正真正銘のプログラマとしての選択であれば、文句なしにPythonとなりますが、プログラミング未経験者がプログラマー業界に転職するのは容易ではありません。(正直、年齢も重視されるはずです)
一般的に考えれば、VBAを勉強しながら現職で活用しつつ、VBAが使える人材として、マッチする求人を探すほうが敷居は低いでしょう。ひとつ、重要なお話をすると、すべてのプログラミング言語はプログラミング的思考のうえに成り立っています。
VBAを高いレベルで使いこなせるようになっていれば、Pythonもすぐに理解できるでしょう。プログラミング言語には、思考法に共通性があるのです。
結論として、転職対策として考えるのであれば、まずはVBAのほうが無難化と思います。
社内業務の自動化目的
十中八九のケースでVBAがよいでしょう。ただし、自動化はExcelに限定されます。
Pythonを選択しなかった理由として、基本的にプログラミング言語は、業務の自動化に使われることはあまり一般的ではありません。プログラミング言語は、使える人がかなり限定的になります。
プログラミング言語を業務の自動化で活用してしまうと「依存性の高い業務」を生むことになり、それはリスクでしかありません。
VBAであれば、Excelの自動化に特化した言語であることと、他のプログラミング言語と比較し、使える人はそれなりにいますので、リスクは軽減されます。
将来性
Pythonです。Pythonは数あるプログラミング言語の中でも、人工知能などの最先端技術との相性がよい将来性の高い言語です。
将来性を考えての習得であるならば、間違いなくPythonがよいでしょう。
まとめ
今回は、Pythonか、VBAか、について。ふたつのワードからニーズを探って記事にしてみました。
記事の中でも触れましたが、プログラミング言語の思考法はすべての言語に共通しています。ひとつの言語を、ある程度使えるようになれば、他の言語もすぐに使えるようになります。
何はともあれ、まずは「行動」です。迷って行動が遅くなるくらいなら、直観でどちらかを学習しましょう!