• ベストアンサー

VBAとマクロの違い

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

  • miyac
  • お礼率71% (5/7)

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

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

miyac
質問者

お礼

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

その他の回答 (1)

  • Traja
  • ベストアンサー率19% (107/546)
回答No.1

VBA:Visual Basic for application(言語の種類) マクロ:VBAで記述された一塊の関数 ですね。 ずっと以前のEXCLなどでは、キーボードマクロといった機能があり ~キーを押す。 範囲を選択する。 といった、直接操作と対応する手順を登録することが可能でした。 が、現状のExcelでは、[ツール]-[マクロ]で操作を記録させると Visual Basicのコードとして記録されますから、ほぼ同義という事に なるのでしょうか? ただし、VBAではそれだけにとどまらずに、「Excelで出来ることは VBAで全て記述できる?」なんて言葉があるくらい 奥深いものになっていますが。 (オブジェクト、メンバ、メソッド、等の知識が追いつけばの話ですけど) ですから私は、やりたい事をまずマクロの記録で記録させて、その結果を Visual Basic Editerで、加工してマクロとして使ってます。

miyac
質問者

お礼

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

関連するQ&A

  • VBAとマクロの違い

    こんばんは。エクセル初心者です。 VBAとマクロの違いについて教えてください。 VBAというのは、プログラミング言語のことで よろしいのでしょうか? そのVBAで記述されたものをマクロとよぶ といったイメージでよろしいのでしょうか? たとえば、あるエクセルにはいってるマクロを 実行する、ということを作業マニュアルに記述 する場合 「○○マクロを実行する」というのが 正しいのでしょうか?それとも 「VBAを実行する」というのが正しいのでしょうか? まったく見当違いのご質問だったら申し訳ありません。 教えてください。

  • エクセルのマクロとVBA。

    エクセルのマクロとVBAを初心者の人に分かりやすく説明するにはどのような例を挙げて説明すればいいでしょうか?

  • マクロとVBAの違いは?

    最近officeのVBAを勉強してるのですが「マクロ」と「VBA」って何が違うのでしょうか? アクセスはマクロとVBA(VBE)が別れてるけど、 エクセルは「マクロの記録」でVBAコードが取得できますよね。 マクロとVBAは同じ意味なのか、違う意味なのか教えていただけますか?

  • VBAとマクロ

    お世話になります。田吾作7です。 ふと思ったのですが。。。 VBAとマクロの違いって何でしょう? 「マクロの記録」ボタンを押したのがマクロですか? VBAは、MS-Officeのモジュールにユーザ自身が書き込んだら、それはVBAですか? もしそうなら、[マクロの記録]ボタンはなぜ[VisualBasicツールバー]にボタンがあるのでしょうか。マクロを編集しやすくするためでしょうか? 記録で Range("A1").select それを編集で Range("A2").select としたらVBA? さらに最初っから Range("A2").select と記録したマクロは、やっぱりマクロ? VBAとマクロって違いあるのでしょうか? いつも疑問に感じて、モヤモヤしてます。 だれか、このモヤモヤ感を解消してください。 よろしくお願いします。 余談ですが・・・ VBAは[VB for Application]ですよね? Office関連のためのVBってことですよね。 でもAPIを使ってWINDOWSを制御することもできるから[for App]の意味が無いような気がする今日この頃・・・

  • VBAでマクロ付きファイルを開く場合

    こんにちは。 VBA初心者です。 VBA(Workbooks.Open Filename)を使ってマクロ付エクセルファイルを開こうとしたのですが、単体で開く時と違い「マクロを有効にするか無効にするか?」ダイアログが表示されません。 マクロを有効にしてファイルを開きたいのですが、これはダイアログが表示されていないだけで自動的に「マクロを有効」となってファイルが開いているのでしょうか?そうではない場合このダイアログを表示させるにはどうしたら良いでしょうか? 判りつらい説明で申し訳ありませんが、教えて下さい。

  • マクロ VBAについて

    例えばsheet1に試験1、試験2、試験3というマクロが保存されていたとします。 この状態で もし試験1と試験2のマクロが実行されていれば試験3のマクロを実行する。というVBAは可能なのでしょうか。 私は初心者ですがたぶんIFを使うんではないかと思うんですが、詳しい方いましたら宜しくお願いします。

  • マクロとVBA

    エクセル2000を勉強していると、マクロとかVBAという言葉が出てきます。マクロは分かってきたんですが、VBAとはなんですか? また簡単なマクロを組んだり、VBAを勉強したいので参考になるHPなどがあれば教えてください。

  • EXCELのVBAマクロについて

    EXCELのVBAマクロで、プログラミングをしてシート保護を パスワードでロックするのですが、ウィンドウ枠の固定や解除までは、ロックできません。 ロックするには、どうしたらよいのでしょうか?

  • エクセル VBA を覚えたいのですが。2003と2007の違いについて

    はじめまして。これから、仕事などで、使用したいので、エクセル VBAやマクロを覚えたいと思っているまだ、何も知らない初心者なのですが、本屋さんにいくと、VBA入門本は当たり前ですが、2003と2007があります。私は今、エクセル2003を使用してますが、やはりこれから、VBAを覚えようとすると、やはり、2007の方のがよいのでしょうか?せっかくたとえば2003を覚えてもまた、2007やその先の「200X」みたいなものを覚えなおさなきゃいけないものなのでしょうか? 初心者すぎて、質問自体が?部分があるかもしれませんが、どうかよろしくお願いします。

  • VBAとマクロについての質問です。

    VBAとマクロについての質問です。 VBAで記述された事によって生まれた,ある機能の事を「マクロ」と言う。 で合っていますか?

専門家に質問してみよう