- 公開日:2016-3-14 最終更新日:2016-4-10
- プロナビTOP / プログラミング初心者向け技術系ノウハウ・まとめ

仕事上で膨大なデータ入力やデータ分析など、気の遠くなるルーチン作業をこなさなければいけない時に活躍するのがVBAというプログラミング言語です。今回はこのVBAについて、言語の特徴や上達のコツなど幅広いトピックを連載形式で取り上げていきたいと思います。
目次
VBAとは?
VBAは、Visual Basic for Applicationsの略語で、Microsoftが提供するExcel、PowerPoint、Word、Access、Outlookなどのアプリケーションで使用するためのプログラミング言語です。
HTMLやPHP、Rubyなどとは異なり、基本的にはローカルで動作することを想定した言語なので、難しい環境設定などはほとんど不要です。VBAは、知識さえあれば今すぐにでも始められるというお手軽さと実用性の面で、ビジネスパーソンに非常に人気のある言語です。
VBAとマクロの違い
VBAとマクロはよく混同されがちですが、簡単にいうとVBAはマクロを作成するためのプログラミング言語、マクロはVBAを使って作成したプログラム(機能)となります。
ExcelやPowerPointなどで何か動作をさせたい場合、VBAを使ってマクロを作成することになるため、混同されてしまうのも納得できる話ですね。
VBAとVBの違い
マクロと同様に混同されがちなのが、VB(Visual Basic)です。こちらの二つについては、VBがVBAのもととなっている言語で、VBAはMicrosoftのアプリケーション用にカスタマイズされたVBという関係性です。
VBはMicrosoft Officeが無くとも単体で動作しますが、VBAはMicrosoft Officeが無いと動作しません。一方で、VBは開発環境をある程度自分で作成する必要がありますが、VBAはMicrosoft Officeさえあれば開発できるというメリットもあります。
VBのメリット・デメリット
- メリット:Microsoft Officeなどがなくても動作する
- デメリット:開発環境をつくる必要がある(費用も多少かかる)
VBAのメリット・デメリット
- メリット:Microsoft Officeなどがあれば、すぐに始められる。
- デメリット:VBに比べて機能に制限がある
ちなみに、VBAのほうが学習を始めやすく、プログラミングの結果も見えやすいため、初心者にはVBAがおすすめです。
VBAで何ができる?
では、VBAを使うとどんなことができるのかというと、主に以下のようなことができます。
VBAで開発できる主な機能
- Excel内のデータの四則演算、行列操作、並べ替え、書式変更
- Excelなどでの数千行、数十万データの検索、置換、集計、分析(膨大なデータの整形・集計・分析)
- CSVやテキストなど外部ファイルの作成、読み込み、書き込み、名称変更、保存、削除、一覧作成
- 定型のPowerPointファイルやPDFファイルの作成(定期的な報告書作成、企業別のレポート作成など)
- ウェブサイトからのデータダウンロード(サイトクローリング)
最後の一つだけ他の機能と比べて浮いてますね。先ほど冒頭で、VBAは「Microsoftが提供するExcel、PowerPoint、Word、Access、Outlookなどのアプリケーションで使用するためのプログラミング言語」というお話をしましたが、実はInternet ExplorerというウェブブラウザもMicrosoftが提供するアプリケーションのため、VBAでの操作が可能なのです。VBAの学習を進めていくと、クローラーの開発までできてしまうということで、お手軽に始められる割には応用性が高いというのもVBAの魅力の一つです。
VBAの上達のコツは?
VBA上達の一番の近道は、とにかくVBAを作って動かしてみることです。他のプログラミング言語とは異なり開発環境も必要ないですし、プログラムが正しいかどうかについても結果をすぐに確認できます。
…とはいえ、
「関数もあまり使ったことないし、いきなりVBA作ってみろって言われても全然わかんないよ!」と思われている方も少なくないと思いますので、次回以降ではVBAでよく使う関数や文法の解説、主な機能の開発事例(コード例)などを一つ一つ紹介していきたいと思います。
【オススメ記事】
➡︎ VBA資格取得を独学で。使った書籍3冊は?
➡︎ VBAの本・参考書の評判
➡︎ 習得必須!VBAを教われるスクールBEST5