VBAエキスパート対策
マクロの記録

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

マクロの記録


・マクロ記録とは
・マクロ記録の限界
・マクロ記録の活用方法
・記録のしかた
・記録される場所
・標準モジュール
・個人用マクロブック



【ここでのポイント】

マクロの記録の操作方法
記録されるブック
記録されないもの

このあたりを押さえておけば問題ないでしょう。
ただし試験は40問あるので、最低1問は必ず出題されると思っておいた方が良いでしょう。


マクロ記録とは

Excelに行った操作をVBAのコードとして記録する機能です。


マクロ記録の限界

・ステートメントや関数は記録されない
 ただし、Withステートメントのみ記録されます。

・不要な設定まで記録される
 操作で変更していないものまで記録されます。

・全てが記録されるわけではない
 ダイアログボックスを表示する操作は記録されません。

マウスとキーボードで操作した結果、
Excelのブック・シート・セルに与えた影響をVBAコードで記録しているに過ぎません。
従って、マウスとキーボードで操作出来ないものは記録できません。


マクロ記録の活用方法

VBAでマクロ作成の過程で、分からないことを調べるための機能です。


VBAで分からないことがあった場合、マクロ機能でそれを操作して記録します。
記録されたVBAコードから、調べたいコードを見つけて参考にします。


記録のしかた

・マクロの記録
「開発」タブ→「コード」グループ→マクロの記録

MOS VBA 画像


ステータスバー→マクロの記録

MOS VBA 画像
・「マクロの記録」ダイアログボックス
MOS VBA 画像

マクロの名前
標準では、「Macro1」「Macro2」と連番になります。

名前は変更できるが、以下の規則があります。
・名前の先頭は、英文字(大文字、小文字、全角、半角)、ひらがな、かたかな、漢字
・空白は使えない
・記号は、_(アンダーバー)のみ使用可能
ショートカット キー
記録したマクロにショートカットキーを設定

Excel標準のショートカットキーを指定すると、置き換わります。
すでにそのブックでマクロ記録で使ったショートカットキーは使えません。

設定されているショートカットを見るには、
「開発」タブ→「コード」グループ→「マクロ」→オプション
マクロの保存先
マクロの記録を保存するブックを指定します。

・個人用マクロブック
 この下の項目で説明しています。
・新しいブック
 新規ブックが挿入される。
・作業中のブック
 今操作しているブック。
説明
記録されるVBAコードに説明文が入ります。
・記録終了
「開発」タブ→「コード」グループ→マクロの記録

MOS VBA 画像


ステータスバー→マクロの記録

MOS VBA 画像
・相対参照で記録
MOS VBA 画像

マクロの記録中でも変更できます。

A1がアクティブな状態から始めたとして、B2セルを選択すると、

相対参照にしていない場合は、
Range("B2").Select
このように記録されます。

「相対参照で記録」にすると、
アクティブセルからのOffsetで記録されます。
ActiveCell.Offset(1, 1).Range("A1").Select

このように記録されます。

この機能は試験対策としては要注意です。
なぜなら、この機能を普通は使う事が無いからです。
多くのVBAの本にも書かれていない場合の方が多いと思います。
だって、普通は使う事はありませんので。
私自身、実務で使ったことなどありません。

この機能は、試験対策としてのみ覚えておけば良い事です。


記録される場所

「マクロの記録」ダイアログボックスで選択したブックの標準モジュールに保存されます。

保存される標準モジュールは、
適宜(マクロの記録が判定して)、新しい標準モジュールが挿入されます。


標準モジュール

次回の「VBAの構文」で詳しくやります。


個人用マクロブック

個人用マクロブックは、Excel起動と同時に開かれます。
従って、
個人用マクロブックのマクロは、全てのブックで使用できます。

個人用マクロブックは、標準で非表示になっています。

個人用マクロブックの保存されている場所
Windowsのバージョンによってフルパスは変わりますが、
XLSTARTフォルダ」と呼ばれる特別なフォルダに、
PERSONAL.xlsb」というファイル名で保存されます。

「XLSTARTフォルダ」内のブックは、Excel起動と同時に読み込まれます。


【業務改善の実務】

マクロの記録は、不明なプロパティ・メソッド、そしてその引数を調べるためのものです。
記録されたVBAコードが分からない時は、ヘルプやWEBで調べて下さい。

個人用マクロブックは、名前の通り「個人用」です。
組織内のPCで使う場合は、運用について良く検討しておく必要があります。

ある処理をするマクロを、各PCの個人用マクロブックにいれて使っていた場合、
そのマクロが変更になった時に問題が生じます。
個人用マクロブックに、それこそ個人的にマクロを追加している場合を考えて下さい。
ブックを配布して取り替えてしまうと、個人的に作ったマクロは消えてしまうし、
かといって、個々人でマクロを修正していたのでは無駄の極致です。
またPC取り替えの時に、バックアップ対象フォルダとして認識しないで消してしまう事もあります。
従って、組織内のPCでは使用方法については慎重に見当する必要があります。


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

Excelマクロの記録で覚えるVBA
EXCELVBAの自動記録を使って、記録されたVBAコードを読みつつ修正しつつVBAを覚えていこうというシリーズです。VBAをある程度覚えた後にも、マクロの自動記録はVBAコードを調べるときによく使われます、そうした時にも、自動記録はVBAコードはしっかりよめるようになっておきましょう。

マクロVBA入門:第3回.マクロの記録
エクセルのマクロを説明する上ではまず最初に「マクロの記録」を説明しなければなりません。マクロの自動記録とも言われたりしますが要はエクセルの手動での操作が自動記録されるものですもちろんマクロの言語であるVBAで記録されます。実際にはマクロの記録から作成されたVBAコードを修正して使う事はしません。




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

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


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

CSVの読み込み方法(ジャグ配列)|VBAサンプル集(7月15日)
その他のExcel機能(グループ化、重複の削除、オートフィル等)|VBA入門(7月14日)
オートフィルタ退避回復クラスを複数シート対応させるVBAクラス|VBA技術解説(7月6日)
オートフィルタを退避回復するVBAクラス|VBA技術解説(7月6日)
IfステートメントとIIF関数とMax関数の速度比較|VBA技術解説(6月23日)
Withステートメントの実行速度と注意点|VBA技術解説(6月6日)
VBA+SeleniumBasicで検索順位チェッカー(改)|VBA技術解説(6月2日)
マクロでShift_JIS文字コードか判定する|VBA技術解説(6月1日)
Shift_JISのテキストファイルをUTF-8に一括変換|VBAサンプル集(5月31日)
「VBAによる解析シリーズその2 カッコ」をやってみた|エクセル(5月21日)


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

1.最終行の取得(End,Rows.Count)|VBA入門
2.セルのコピー&値の貼り付け(PasteSpecial)|VBA入門
3.RangeとCellsの使い方|ExcelマクロVBA入門
4.変数とデータ型(Dim)|ExcelマクロVBA入門
5.Range以外の指定方法(Cells,Rows,Columns)|VBA入門
6.繰り返し処理(For Next)|ExcelマクロVBA入門
7.マクロって何?VBAって何?|ExcelマクロVBA入門
8.ひらがな⇔カタカナの変換|エクセル基本操作
9.ExcelマクロVBAの基礎を学習する方法|エクセルの神髄
10.空白セルを正しく判定する方法(IsEmpty,IsError,HasFormula)|VBA技術解説



  • >
  • >
  • >
  • マクロの記録

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


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




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