1分で分かる!VBA
A:ふぅ…。毎週毎週めんどくさいなぁ…。
B:おや、ことりん君。ストレスたまってるみたいだね。どうしたの??
A:ジャバ―ド先生!こんにちは!僕の会社、毎週Excelでレポートを作らないといけないんだ…。
このシートから、この列の値をコピーしてきて、ここに貼り付けて、ここの値はこっちのシートのこれをコピーして…。で、これとこれの合計を出して、ここの数字を掛けて…。
B:何やら面倒な作業をやっているみたいだね。大丈夫??
A:あぁ!ジャバ―ド先生、ちょっと今話しかけないでぇ!!あっ…やってしまった…。また最初からやり直さないと…
B:お邪魔しちゃったかな?なんだか申し訳ない。ところで、そのExcelの業務って、もっと楽になりそうだね?
A:ほ、ほんとうに??こんな作業もうやりたくない…
B:VBAって知ってる?
A:ぶい・びー・えー?ってなに??
B:VBAっていうのは、プログラミング言語の1つだよ。Microsoft社のOfficeの拡張機能として提供されているんだ。簡単にいうと、WordとかExcelでプログラミングができるんだよ。
A:え、そんな機能があるの!?
B:そうそう。VBAを使えば、人間がOffice製品上で操作していることはだいたい自動化できちゃうんだ。
A:めっちゃ楽じゃん!!
B:ことりん君がさっきやってたような業務あるよね。このシートの、この値をコピーして、どうのこうのってやつ。VBAでプログラミングしてあげれば、ボタンをワンクリックするだけで、集計→ファイル作成→メールで送信 みたいなこともできると思うよ。
A:メール送信もできるの!?
B:できちゃうんだよ。レポート作成に使っていた時間を、もっと大事な仕事に使えそうだね!
A:ジャバ―ド先生ありがとう!(レポート作成に使っていた時間、まるまるサボれそうだ!!)
B:なんかよくないこと教えちゃったかな…
VBAとは?VBAの基礎知識
VBA(Visual Basic for Applications)とは、Microsoftのアプリケーションで使用できるプログラミング言語です。
他のプログラミング言語は、環境構築などを行う必要があり、初心者にとっては、やや難易度が高いものもあります。
一方、VBAはOfficeなどがインストールされていれば、すぐに開発を始めることができます。ただし、JavaやPythonなどのようにWebアプリケーションやスマートフォンアプリなどを開発することはできません。あくまで、Officeシリーズのソフトウェアの一部であるWordやExcel、Access、PowerPointなどで利用できる機能です。
なお、VBAはVisual Basic(VB)というプログラミング言語を、Office用にカスタマイズしたものです。そのため、Visual Basicを習得していれば、すぐに開発することができます。
VBAを使うエンジニア
VBAをメインのスキルとしているエンジニアは、あまり多くありません。どちらかというと社内業務を自動化するための「社内ツール」や、開発に関連した作業を効率化するための「開発ツール」などを開発する際に使用されます。
VBAエンジニアの特徴と在籍業界
VBAエンジニアは、Web業界、SIer業界、組み込み業界…など、どの業界にもいます。特に、社内SE(情報システム)などが、社内業務を開発する際は、VBAを選択するケースも少なくないでしょう。ただし、前述したように、あくまでもITエンジニアが、メインのスキルとするようなプログラミング言語ではありません。
「既存業務について、余りお金をかけずに簡易的に自動化したい」「手作業では作業時間がかかってしまうし、ミスも発生する可能性があるので、これを解決したい」といったケース、かつOffice製品が利用できる状態にある際は、VBAの利用を検討することが多いです。
採用する時に知っておくとよいこと
もし、候補者がもっとも得意とするプログラミング言語として、VBAをアピールしてきた場合、その他のプログラミング言語が利用できるか確認しましょう。前述してきたように、VBAはプログラミング言語でありながら、その用途は非常に限定的です。
求人のポイント
求人を作成する時は、下記の内容を求人に入れるとよいです。
1.システム(サービス)の詳細
※特にそのシステム(サービ)をなぜ作っているのかを熱量をもって記載する。
2.開発環境
3.現在のエンジニア組織の体制
4.現行システムの課題と募集の背景
5.求められる業務と期待値
6.エンジニアとしてのスキルアップ支援制度の有無と詳細
7.エンジニアチーム内での相互成長のための仕組み(勉強会やLT会など)の有無と詳細
8.選考フロー
9.待遇
10.キャリアパス
VBAの豆知識
VBAでできること
VBAでできる主なことは下記の通りです。
- Excelの作業自動化
- メール送信
- Webスクレイピング
- Excelを用いた分析
RPAブーム
昨今、日本では、RPAというものがブームしています。RPAはRobotic Process Automationの略で、業務効率化のために動作するロボット(ソフトウェアのプログラム)を指します。企業は効率化を目的として、積極的にRPAを導入した企業もあります。
ですが、そもそもVBAが利用できているのであれば、ある程度のことは自動化できてしまうため、RPAを導入する必要性は下がります。
VBA関連の資格
VBA関連の資格として下記のようなものがあります。
株式会社 オデッセイ コミュニケーションズ 主催:VBエキスパート