VBAエキスパート対策
マクロとVBAの概念

Excel VBAエキスパート対策です
最終更新日:2020-02-03

マクロとVBAの概念


・マクロとは何か
・VBAとは何か
・VBAの特徴
・Visual Basic Editorの操作と画面
・ブックとマクロの関係
・セキュリティレベル


【ここでのポイント】

ここでは基本用語を覚えて下さい。

略称と正式名称を覚え、各用語を端的に説明できるように。

各操作や、画面の構成については、
今後の学習を進めるうえでも、最低限の事はできるようになっておく必要があります。
書籍やWEBで画像を見ても覚えられるものではありません。
必ず、一通り実際に操作しておきましょう。

VBAエキスパートにはExcelのバージョン指定がありません。
従って、
Excel側での詳細な操作方法は出題されないはずです。
しかし、
VBE側の操作は変わっていないので出題される可能性は高いと思います。

※プログラミングにおいては、開発環境の操作に慣れることは非常に重要な事です。

マクロとは何か

マクロはExcelの機能名で、マクロ機能です。

以下を把握しておきましょう。

・マクロはVBA言語で書かれている。
・Excelの全機能を操作出来ます。
・操作を記録できる。
・Windowsの設定やインターネットのデータ収集も可能。

VBAとは何か

VBAは、マクロを記述しているプログラミング言語です。

VBAは、Visual Basic Applications の略です。

※試験に出るとは思えませんが、最後に複数形のsが付きます。
  これは、Officeの複数製品にVBAが搭載されていることを指しています。

VBAの特徴

ここは、流し読みで構いません。
後々の章で学ぶ内容です。

・イベント駆動型の言語
イベント駆動型とは、何かのきっかけでプログラムが動き出す仕組。
例えば、
マクロを割り当てたボタンをクリック(これがきっかけ、イベントです)でマクロが起動。

・オブジェクト指向型言語
オブジェクトは「対象物」。
プロパティは、オブジェクトの様子や状態。
メソッドは、オブジェクトに何かをさせる。

Visual Basic Editorの操作と画面

VBEは、Visual Basic Editor の略です。

VBAでマクロを作成・編集する画面で、Excelに搭載されているVBAの開発環境です。

・開発タブの表示
操作手順の細部はバージョンにより違うので出題されないと思います。

既定では表示されていないので、自分で設定して表示するという事だけ。
・VBEの起動
「開発」タブ→「コード」グループ→Visual basic(Alt + F11)

2003までは違う操作になりますが、それは気にしなくて良いでしょう。

プロジェクト エクスプローラー ・・・ モジュールがツリー形式で表示
プロパティ ウィンドウ ・・・ プロパティを設定
コード ウィンドウ ・・・ マクロのVBAコードを記述

VBEの画面については、一通り実際に操作して確認してください。
・VBEの終了
VBE終了後もExcelはそのまま残り、アクティブシートが表示されます。
・Excelに切り替える
切替方法が複数あり、テキストに書かれていない方法もあります。

・Windowsのタスクバー

・表示 Microsoft Excel(Alt + F11)
  MOS VBA 画像

・表示→オブジェクト
  MOS VBA 画像

・プロジェクト エクスプローラーのシートを右クリック→オブジェクトの表示
  MOS VBA 画像
  この場合は、クリックしたシートがアクティブになります。
モジュールの解放
テキストには書かれていませんが、
モジュールの解放については覚えておいた方が良いでしょう。

モジュールを右クリック→○○○の解放
MOS VBA 画像

クリックすると、
MOS VBA 画像

はい:「Module1.bas」VBAをテキストとして保存出来ます。
    Module1は削除されます。
いいえ:Module1は削除されます。

ブックとマクロの関係

マクロはブック内に保存されます。

拡張子について覚えておきましょう。
xls : 2003までの拡張子で、マクロの有無に関係なく保存可能
xlsx : 2007からの「Excel ブック」、マクロ無しブックです。
    マクロが入っていると警告メッセージが出ますが、「はい」で保存するとマクロが消えてしまいます。
xlsm : 2007からの「Excel マクロ有効ブック」、マクロ付きブック

セキュリティレベル

マクロ実行を許可するセキュリティレベルがあります。

・警告を表示せずに全てのマクロを無効にする
・警告を表示してすべてのマクロを無効にする
・デジタル署名されたマクロを除き、全てのマクロを無効にする
・全てのマクロを有効にする

これらの違いについては、しっかり把握してください。
MOS試験以前に、社会人として知っておくべき事です。

設定についての細かい操作方法は出題されないはずです。
セキュリティの概念だけ押さえておけば問題ないでしょう。

そして、重要だけど見落としがちな事として、
マクロのVBA記述をいくら駆使しても、このセキュリティを突破することはできせん
当たり前ですけどね。

【業務改善の実務】

マクロを作って(社内等に)配布した時に、
「ボタンを押しても何も動かない。」
このような事はしばしばあります。

このような場合の多くは、
セキュリティの警告を知らない人が、マクロを有効にしていない事によるものです。
従って、
配布先にExcelに不慣れな人がいる場合は、この警告について一言書いておくようにします。

【本サイト内の関連ページ】

マクロVBA入門:第1回.マクロって何?VBAって何?
エクセルのマクロって何でしょうか? ExcelのVBAって何でしょうか? 「マクロ」とは、エクセルの操作を自動化するものです。その自動化する機能が、「マクロ」と呼ばれています。マクロの中身は、プログラムです。

マクロVBA入門:第2回.まずはマクロVBAを使う準備
さっそくマクロを作りましょう。と、その前に、準備があります、上部のリボンに、「開発」タブを追加します、「開発」タブには、マクロを開発するにあたって必要なアイコンが並んでいます。※画像は、Excel2013になります。

Excelマクロ再入門:第1回.マクロを書く準備をする(VBAとVBE)
マクロを書こうと思ったら、まず初めにマクロを書く準備をする必要があります。と、その前に、ひとつ説明しておくことがあります。エクセルのマクロとVBAという言葉の意味です。「マクロ」とは、エクセルの操作を自動化するもので、その自動化する機能を「マクロ」と呼びます。

VBAエキスパート公式テキスト

2019/5/30発売リニューアル版


2019/7/26発売リニューアル版

こちらは必須として購入した方が良いでしょう。
ちょっと高いなーとは思いますが、
書籍を購入することで、学習用データが提供されています。
・サンプルブック
・VBAエキスパート模擬問題
これらが使えるようになります。
このシリーズでは、テキストを読みながら学習していることを前提とします。



同じテーマ「VBAエキスパート対策」の記事

マクロとVBAの概念
マクロの記録
VBAの構文
変数と定数
セルの操作
ステートメント
ブックの操作
シートの操作
デバッグデの基礎
マクロの実行
VBAベーシック試験対策まとめ


新着記事NEW ・・・新着記事一覧を見る

import文(パッケージ・モジュールのインポート)|Python入門(9月24日)
例外処理(try文)とexception一覧|Python入門(9月23日)
リスト内包表記|Python入門(9月22日)
Pythonの引数は参照渡しだが・・・|Python入門(9月21日)
lambda(ラムダ式、無名関数)と三項演算子|Python入門(9月20日)
関数内関数(関数のネスト)とスコープ|Python入門(9月18日)
関数の定義(def文)と引数|Python入門(9月18日)
組み込み関数一覧|Python入門(9月17日)
辞書(dict型)|Python入門(9月16日)
入力規則への貼り付けを禁止する|VBA技術解説(9月16日)


アクセスランキング ・・・ ランキング一覧を見る

1.最終行の取得(End,Rows.Count)|VBA入門
2.RangeとCellsの使い方|VBA入門
3.変数宣言のDimとデータ型|VBA入門
4.マクロって何?VBAって何?|VBA入門
5.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
6.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
7.繰り返し処理(For Next)|VBA入門
8.セルに文字を入れるとは(Range,Value)|VBA入門
9.とにかく書いてみよう(Sub,End Sub)|VBA入門
10.マクロはどこに書くの(VBEの起動)|VBA入門




このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。


記述には細心の注意をしたつもりですが、
間違いやご指摘がありましたら、「お問い合わせ」からお知らせいただけると幸いです。
掲載のVBAコードは動作を保証するものではなく、あくまでVBA学習のサンプルとして掲載しています。
掲載のVBAコードは自己責任でご使用ください。万一データ破損等の損害が発生しても責任は負いません。



このサイトがお役に立ちましたら「シェア」「Bookmark」をお願いいたします。
本文下部へ