VBA講義室 > マクロとは何か? > マクロとVBA

マクロとVBA

マクロとかVBAとか言うけれど。

マクロとVBAは同じもの?

Excelでは「マクロ」と「VBA」という用語が同義で扱われることが多いが、私自身は次のように認識している。

マクロ


「マクロ」という用語はMS Office製品に限らず使用される。「ユーザーがアプリケーションに対して行った一連の操作を記録し再現する機能」である。当然のことながら、再現するためには何らかの方法で記録しなければならない。記録するためには法則性を持った記号群(言語)をあらかじめ用意しておく必要がある。即ち、「マクロ」機能を持ったアプリケーションには「マクロ記録用の言語」が必ず用意されている。

VBA


Excelをはじめとする最近のMS Office製品では「マクロ記録用の言語」として、「Visual Basic For Application(VBA)」を採用している。「VBA」はプログラム開発用言語「Visual Basic」の仕様に準じて設計されている。そのため、双方の構文は非常に良く似ている。

マクロ機能とマクロ言語

Excelにおいて「マクロ」というのはExcelの機能の一つであり、「VBA」は「マクロ記録用の言語」として「マクロ」機能を実現するために用意された道具であるので、厳密には同義ではない。

「マクロ記録用の言語」である「VBA」はExcelブックに設けられたマクロ記録用の「モジュール」という部分に記録される。記録されるので閲覧することが出来、また、編集することが出来る。編集することが出来るので、一定のルールを満たしている書き方をすれば記録したマクロをカスタマイズすることが出来る。また、まったく白紙の状態からExcelを操作するマクロの命令を書くことが出来る。

「マクロの命令」を書くことが「プログラム言語でプログラミング」することと似ているので、記録したマクロを書き直したり、白紙状態からマクロを作ることを「マクロプログラミング」と呼ぶ場合がある。

Memo

VBとVBA、どちらかを扱えるひとはもう一方の扱いも容易になる、ということも聞いたことがあるが、みやほりんはいまだにExcelVBA一本である。それでも、まったく歯が立たないというものでもなくて、VBのコードやVBScriptのコードを見ると「なんとなく」何をしようとしているコードなのかわかる(ような気がする)。


前(始めに) 目次 次(マクロで何が出来るのか)


SEO [PR] 爆速!無料ブログ 無料ホームページ開設 無料ライブ放送