【Excel】今さら聞けない!マクロとVBAの違い ~マクロの正体はVBA~

0

    JUGEMテーマ:パソコン教室





    こんにちは!ハロー!パソコン教室イオンタウン新船橋校 鈴木( @hello_shinfuna)です。

     

    ExcelのマクロとVBA、どちらも同じものだと思っていませんか?

    違うことは分かっていても何がどう違うと説明できる方は少ないのではないでしょうか。

    今日はそんな今さら聞けない疑問を解決したいと思います!





    スポンサーリンク

     

     

     

    マクロは処理手順の記録・実行、VBAはマクロを実現するプログラミング言語

     

    まず、マクロとVBAは全くの別物です!

    「マクロ」はExcelの機能名、「VBA」はマクロのコードを作るときに使うプログラミング言語の名称になります。

     

    本来は機能と言語という別の土俵にいるので区別する以前の問題だと思いますが、実際のところ、マクロを作成するときはVBAを使うことになるので、両者は同じ意味として使われているパターンが多いのだと思います。あえて区別して使うのは、逆に無理があるのかもしれませんが、『マクロは使えるけど、VBAは使えません!』などとトンチンカンなことを言わないように正しい理解を身につけましょう!

     

    雑誌や書籍でもマクロとVBAは混同して使われがちですが、書いてあるからといって必ずしも正しいとは限りません。

    以下のように認識している人は要注意です!

     

    マクロ = マクロ記録で操作を記録すること

    VBA = VBE(エディタ)でコードを手書きすること

     

    これは明らかに間違いです。

    マクロ記録で記録されるのはVBAのコードですし、VBEで手書きしたコードを実行するのはマクロ機能です。

     

    何となく理解はできましたでしょうか?

    続いてマクロとVBAの違いについて誤解しやすいポイントを踏まえて解説したいと思います。

     

     

    Excelのマクロとは

     

    「マクロ」とは、Excelや他のアプリケーションなどを、あらかじめ決めた手順で制御する機能の名前です。Excelの機能名ですから「グラフ」「ピボットテーブル」「オートフィルター」などお馴染みの機能名と同じカテゴリーの用語です。

    機能というと、マクロ=Excel操作の自動記録、と思ってしまいがちですが、そうではありません、Excelや他のアプリケーションなどを、あらかじめ決めた手順で制御する機能です。

     

    また、マクロ機能は、Excelに限らず他のマイクロソフト社製のアプリケーションにも搭載されています。各々のアプリケーションにより仕様が若干違います。

     

    マクロとは、関連する複数の操作や手順、命令などを一つにまとめ、必要に応じて呼び出すことができるようにする機能のこと。

    アプリケーションソフトでは、利用者が複数の操作手順を一連の手続きとして一つにまとめ、自動的に実行できるようにする拡張機能をマクロという。文書内の複数の個所や複数の文書に同じ操作を行わなければならない場合などに、一連の操作をマクロとして登録しておけば、マクロを呼び出すだけで記録した操作を自動的に実行してくれる。

    引用:IT用語辞典

     

    ここまで話をすると「マクロを作るためには、VBAを使ってプログラムを記載する必要がある」と思っている方は多いと思いますが、マクロはプログラムを記載しなくとも簡単に作ることができます。

     

    まず、初めに「マクロを記録」できるようにExcelに「開発」リボンを表示する必要があります。

    1)ファイルメニューから「オプション」をクリック

    2)「Excelのオプション」画面を開く

    3)「リボンのユーザー設定」の「開発」にチェックを入れる

     

     

    4)表示された「開発」リボンの「マクロの記録」をクリックしてExcelの操作を記録する

     

    2017-08-09_14h27_34.jpg

     

    5)「記録終了」をクリックしてExcelの操作の記録を終了する

     

    2017-08-09_14h27_57.jpg

     

    ここで記録されるExcelの操作とは、セルの文字入力、セルのカーソル移動、文字列検索、文字列置換、セルの背景色変更など様々です。記録したい操作を記録中に実行するだけでOKなのです。とても簡単ですが、Excel内部ではちゃんとVBA(プログラミング言語)で一つ一つの処理がコードで記録されています。

    記録したマクロを少し変更したいと思えば、VBAの編集でコードを直接変更することも可能ですよ。←これはVBAの知識がないと難しいですが^^;

     

    このようにマクロ機能で制御する手順をプログラミング言語で記述した一塊の動作を「マクロ」と呼びます

     

     

    ExcelのVBAとは

     

    マクロ機能の手順を記述するための専用のプログラミング言語=マクロ言語です。

    Visual Basic for Applicationsの略称でその名の通り、アプリケーションのためのVisual Basic(プログラミング言語)です。

     

    また、これも混同する人が多いのですが、一般的にVBというと、プログラミング言語のVisual Basicを指します。VB(Visual Basic)は、Microsoftが開発・販売しているプログラミング言語で、Windows上で動作する○○.exeや○○.dllなどの実行形式ファイルを作成できます。

    このVB(Visual Basic)の言語仕様をベースにして、ExcelやWordなどのアプリケーションで使用するマクロ言語としてカスタマイズしたのがVBA(Visual Basic for Applications)です。

     

    つまりVB(Visual Basic)とVBA(Visual Basic for Applications)は全くの別物です。

    VBを理解してるからと言って、VBAにも詳しいとは限りません。VBAを極めるにはまずExcelを詳しく知ることが必要ですね!

     

    先に説明した「マクロの記録」によってVBAは自動生成されています。つまり、マクロを実行しているプログラミング言語はVBAなのです。Excelに記録されたVBAを表示するためには、「開発」リボンの「Visual Basic」をクリックすることで表示することができます。

     

     

     

    VBAは、比較的習得しやすいプログラミング言語ですが、非常に高度なシステムを作ることができる言語です。Excelの複雑な処理はもちろん可能ですが、外部のExcelファイル、テキストファイルのファイル読書き、DBへの接続、WindowsのOS操作まで可能です。

     

    マクロで記録できることには限りがありますが、VBAでコードを記述することによって可能性は大きく広がります。ちょっとしたシステムを構築することも可能になります。

     

    Excelを極めたいという方は是非、VBAに手を伸ばしてみては如何でしょうか?

    まずは、関数、次にマクロ、最後にVBAと順に学習していくといいと思います。

    VBAも白紙からの構築は難しいと思うので記録したマクロのコードを読み解くところから始めると理解も早いですよ!

     

     

     


    いいね or シェアして友達と記事を共有しよう



    このブログを定期購読するなら下のボタンをクリック!

    follow us in feedly

    パソコンの基礎からMOS対策講座まで、船橋市のわかりやすいパソコン教室です!
    まずは、無料体験からお気軽にご連絡ください。

    お問合せ(お電話)047-406-5786
    〒273-0864 船橋市北本町1丁目830-1 イオンタウン新船橋店 マックスバリューさん2F 


     

     

     

     

    スポンサーリンク


    コメント
    コメントする








       

    calendar

    S M T W T F S
    1234567
    891011121314
    15161718192021
    22232425262728
    293031    
    << October 2017 >>

    教室情報

    ハロー!パソコン教室イオンタウン新船橋校
    ハロー!パソコン教室
    イオンタウン新船橋校
    〒273-0864
    千葉県船橋市北本町1-19-50
    イオンタウン新船橋2F
    お問合せ(お電話)
    047-406-5786

    営業時間などの詳細はこちらをご覧ください
    ハロー!パソコン教室イオンタウン新船橋校無料体験レッスンのお申し込みはこちらから
    417.gif

    リンク

    イオンタウン新船橋校はこんなところ!

    明るく楽しいスタッフ達があなたのやりたいことを徹底的にサポートします!
    P1020171.jpg
    レッスンは集合形式ではなく、個別学習式。パーテーションで区切られた個別空間でご自分のペースでレッスンを受講いただけるのが人気の理由の一つです!

    Twitter

    スポンサーリンク

    selected entries

    categories

    archives

    recent comment

    • 【iPad】月額料金は必要?Wi-FiモデルとCellularモデル、どっちを買ったら良いの?
      石川
    • 【iPad】月額料金は必要?Wi-FiモデルとCellularモデル、どっちを買ったら良いの?
      はるか
    • 【10回ミスったらアウト??】パスコードを忘れてしまったiPhone・iPadの強制初期化方法と再設定について
      iPhone パスコード 解除
    • 【iPhone】無料英語学習アプリの決定版!Duolingoで毎日の空き時間を学習時間に変える
      Eduardo
    • 【iPhone】連絡先が重複して困ったらこのアプリ!その名もCleaner
      iPhone 連絡先 重複
    • 【ガラケー】auのGRATINAからiPhoneへ連絡先を移行する方法。誰でも出来る方法を模索してみたよ!
      まつ
    • iPhone・iPadが再起動を繰り返す「リンゴループ」になってしまった時の対処法まとめ
      iPhone 再起動 ループ
    • 【Excel】計算方法が勝手に手動になってしまった!その原因とは?
      ごとう
    • 【Windows】Outlookの連絡先データをGmailに引き継ぐ方法
      ヨシ
    • 【アイコス】iQOSにこびりついた頑固な汚れを安価で綺麗に落とす方法!

    recommend

    recommend

    recommend

    recommend

    recommend

    recommend

    recommend

    recommend

    recommend

    recommend

    recommend

    links

    profile

    search this site.

    others

    mobile

    qrcode

    powered

    無料ブログ作成サービス JUGEM