VBAはプログラマーに転職するのに役に立つか?現役PG・SE視点で回答

ハッキリ言って、プログラマーになってからもVBAはメチャクチャ役に立ちます。

一部では「VBAは素人向けだ」などバカにする人もいますが、そんな意見は気にしなくてOKです。VBAをすでに学んだなら、自信をもって大丈夫です!

でも「どんな風にVBAの知識が役に立つの?」と疑問を感じている思うので、実際のシステム開発で使う状況を紹介します。

自動化ツールを作成し、生産性を向上できる

システム開発では、多くの資料をOffice系のソフト(特にエクセル)で作成します。

そのエクセルで作られた資料を元に、自動で処理を行うツールを作成することがよくあります。(プログラマーやシステムエンジニアが手作業でがんばっていたら・・・ちょっとおかしいですよね?自動化するのが仕事の人たちなのに。)

具体例

よくあるのが、データベースの自動作成ツールです。

データベースの設計書(エクセル)には、どんなデータ(商品名や原価など)を管理するか細かく書かれています。この情報を元に、データベースをVBAで自動作成します。

手作業でデータベースを作成してもいいのですが、やはり時間がかかります。

大量のデータを、早く正確にチェックできる

VBやCなどいろんなプログラム言語がありますが、どの言語でもプログラムを作ったら必ずテストを行います。

未経験の人はテストを軽く見がちですが、製造に60時間かかれば、テストは40時間くらい行います。

そのテストなんですが、実績系(検査結果や売上実績など)のプログラムの時は、大量のデータを使用します。
これを1つ1つ目でチェックしていたら、とてもじゃないけど終わりません。

でもVBAを使用できれば、ExcelやAccessで大量データでも早く正確にチェックすることができます。
(※もちろん、無作為に一部のデータを取り出して、人間の目でもチェックは必要です。)

 

VBAで身に付けたプログラムの考え方は、他の言語でも生きる

VBAでプログラムを作る時、いきなりコードを書くことはないと思います。

実際には、まず日本語の命令に落とし込み、その後にVBAでプログラミングしていきます。(すでにVBAに慣れている人は、無意識でやっていると思います)

例えば、「テスト結果を自動判定するプログラム」を作りたい時、次のように日本語の命令に落とし込みます。

  1. 80点以上の時は、合格
  2. 80点未満は、再試
  3. 判定結果を、セルA1に出力

このあと、日本語の命令をVBAでプログラミングします。

 

言語が変わっても、この日本語の命令に落とし込む考えは変わりません。日本語の命令を、他の言語(VB.netやC)でプログラムしていくだけです。

プログラミングでは、この日本語の命令に落とし込むところが、正直1番難しいところです。なので、VBAでこの考え方を理解できていれば、間違いなく他の言語を学ぶ時も生きてきます。

まとめ

ネット上では、必要以上にVBAをバカにするような意見があったので、今回は役立つ面にフォーカスをあてて書いてみました。

VBAはエクセルがあれば誰でもプログラミングができるため、素人が書いた汚いプログラムがあるのは事実です。

でも、それ以上に役立つことや、メリットの方が間違いなく大きいです。なので、VBAを使ってプログラミングをドンドン学習して、プログラマーへの転職のキッカケにしてください。

タイトルとURLをコピーしました