電子書籍の厳選無料作品が豊富!

VBA初心者です。
会社の人からVBAとマクロの違いについて質問され、ちゃんと説明できませんでした。
なにがちがうんでしょうか?
私は「VBAのプログラミング=マクロを組む」と思ってました。
よろしくお願いします。

A 回答 (2件)

こんにちは。

maruru01です。

Excel(2000)については、No.1の方の説明通り、
「マクロ = VBAというプログラミング言語で記述された一塊の動作」
です。
したがって、miyacさんの、
「VBAのプログラミング=マクロを組む」
で、おおよそあっています。
また、自分で書いたコードをマクロとして登録することも出来ます。
しかし、Access(2000)での"マクロ"は少しニュアンスが異なります。
Accessの場合は、マクロはいくつかの動作・操作は順に登録しておき、それを自動実行させる、という使い方です。自分で書いたコードをマクロとして登録するというやり方ではありません。(本当はそういうやり方も出来ますが。)
したがって、VBAとマクロは何となく別物のような印象を受けます。
それにAccessでは、「マクロを組む」という表現は通常使いません。
ただし、マクロをVBAに変換することが出来ますし、マクロに登録する各動作・操作も、VBAで自分で書くことが出来ます。
ですから、結局同じことなんですけどね。
まとめると、「マクロは自動実行処理を登録すること」で、「VBAはそのアプリケーションのあらゆる操作を記述すること」ですかね。
では。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
なるほど、マクロとVBAでは作業的な意味合いが違ってくるのですね!
丁寧なご説明ありがとうございました。
これで、ちゃんと説明できそうです。(みなさんの受け売りですが ^_^;)

お礼日時:2002/07/11 15:12

VBA:Visual Basic for application(言語の種類)


マクロ:VBAで記述された一塊の関数
ですね。
ずっと以前のEXCLなどでは、キーボードマクロといった機能があり
~キーを押す。
範囲を選択する。
といった、直接操作と対応する手順を登録することが可能でした。

が、現状のExcelでは、[ツール]-[マクロ]で操作を記録させると
Visual Basicのコードとして記録されますから、ほぼ同義という事に
なるのでしょうか?
ただし、VBAではそれだけにとどまらずに、「Excelで出来ることは
VBAで全て記述できる?」なんて言葉があるくらい
奥深いものになっていますが。
(オブジェクト、メンバ、メソッド、等の知識が追いつけばの話ですけど)

ですから私は、やりたい事をまずマクロの記録で記録させて、その結果を
Visual Basic Editerで、加工してマクロとして使ってます。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
キーボードマクロというのは知りませんでした。
やはり、ほぼ同義ということは間違っては無かったのだけど、微妙に違うのですね。勉強になりました。

お礼日時:2002/07/11 15:06

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!