どうも もす です。
仕事やレポート作成の際に使うOfficeのソフト
エクセルやワード、パワーポイントなど使用している人は多いと思います。
そのOfficeのソフトに関する技術のひとつにVBAというものがあります。
名前だけ知っているひともいますかね?
私はネットワークエンジニアをやっていますが仕事でこのVBAを使います。
とても便利なものですが、まわりに使える人があまりいないので自分の価値を向上させる要素のひとつになっています。
今回はそのVBAがどのようなものなのか。なにができるのか。
実例を挙げながら解説していきたいと思います。
VBAってこんなもの
VBAは Visual Basic for Applicationsの頭文字をとったものです。
で?なにかっていうと
JavaScriptとかPythonみたいなプログラミング言語のことです。

↑ こういった感じにOfficeのソフトに「こういう作業をしてね」って指示をします。
マイクロソフトのOffice系ソフトで使用できる言語であり
特別な環境を用意せずともOfficeさえ所持していれば誰でも使用できるのが特徴です。
Officeでの動作なため他言語と比べて応用性が低めなのも特徴のひとつです。
結局なんなのかって端的に言うと
ルールにのっとって文を作るとその指示通りにOfficeが動いてくれるもの
こんな感じです。
VBAはこんなことができる
上にも書きましたが、Officeのソフトを指示通りに動かすことができるのがVBAです。
でも、VBAを知らん人はそれで結局何ができるん?
って感じかと思いますので、具体的にどんなことができるのか解説していきます。
自分が使っているのがExcelなのでExcelでVBAを利用した際のはなしになります。
実際にはExcel以外にもAccess等で利用することもあるそうです。
例えばですが、Excelのシートになにかのデータをまとめていて
それを他のシートや他のExcelファイルにコピーしたいなんて時があると思います。

超テキトーですがこんな表があったとします。
この年齢の平均値を出すくらいなら、関数でできます。
しかし、この血液型の列だけを別シートに持って行きたい。や、A型の人の名前だけ抜き出したい。など少し特殊な動作になると関数ではカバーしきれません。
そういった特殊な動作もVBAなら、自分の指示次第で実現可能です。
他には、上記とは逆にExcelファイルを指定してそのファイルのデータを引用したり、Excel以外にもテキストファイルなんかも扱えます。あとはExcelのシートの並び替えだったり、思いつくことは一通り実現可能だと思います。
なんならOffice全く関係なく、ファイルやフォルダの操作なんかもできてしまいます。
まとめると
Office周りのことならやりたいことは基本的に何でもできる
です。
まとめ
VBAはこんな感じのものです。
単純作業や、定期的におこなう作業をあらかじめ指示しておくことによって
作業の効率化をできるのがVBAを仕事で使う上での利点になります。
業務上Excelのデータ処理を多くする方はVBAをマスターできれば
作業を大きく減らすことができるでしょう。
覚えておいて損はない技術だと思います。
これから本ブログでもVBAに関しての記事を投稿していこうと思っております。
ぜひ参考にしていただけたらと思います。なんならいっしょに勉強してください。
以上です。ここまで読んでいただきありがとうございました。