自動記録は限度があるもの。

「自動記録」が全てではなく、良くない点もあります。



件数(行数)が決まっていないとうまく行かない。
その通りです。単純な操作の記録ですから。
ここで「欲」を出して前項のサンプルのように「どうやったら件数(行数)が違うのに対応できるか調べよう」となれば、一歩前進です。
VBAの学習と考えても、入門書と首っ引きで要らないことまで学ぶよりも、 必要なことから自分で調べて身につける方が早く役立ちます。

「判断」に関する記述が記録されることはない。
これも同じです。単純な操作の記録ですから。
後の方の章でも説明しますが「判断・分岐、繰り返し」の構文はVBAを含めてどのコンピュータ言語にも存在しますが、 「自動記録」で記録させることができないだけです。 「○○だったらF10を押す」がやりたかったとしても「F10を押す」は記録できて、「○○だったら」は操作に現われないので記録できません。
前項の「不定行数」の件も「最終行へジャンプ」などは記録できるので、「不定行数」での複数行分の「まとめ」処理を記録させるということはできますが、 1行分の作業を記録させてそれを複数行に対して繰り返すということは「自動記録」で実現できることではありません。

必要がない動作まで記録されてしまう。
これも単純な操作の記録ですから、そうなります。 前頁のサンプルには余分な記述はあまり記録されていませんが、再現不要なセル選択や画面スクロールまでも記録されてしまいます。
前頁のサンプルでも後半のコード整理で排除されたコードがあることでお解りだと思います。
この「コード整理」は行なわなくても処理結果に影響はないかも知れませんが、もしそれを業務に継続して利用するとなれば問題を残すことになります。

ソースコードを理解しようとしないと意味がない。
これは「私」的意見です。 「自動記録」で済んでしまうこともあるかも知れませんが、通常、「自動記録」であっても「マクロ」まで操作しようとされる方は決して初心者ではないはずです。
いつも「自動記録」だけの範囲で済ませようとするなら、それには「我慢」が伴っていると思います。

正しい表記とも限らない。
「自動記録」はExcelが出してきた「解答」であって絶対正しいのだ、と思ってはなりません。
「自動記録」させたのに、動かない(実行時エラーになる)「マクロ」もあります。また、VBE内の操作など記録されないものもあります。
ソースコードを見ると、ヘルプなどに説明がない記述で記録されていることもあります。

そのままでは実運用には向かない。
「自動記録」させたマクロが所望の結果を出せたとしても、そのままでは繰り返し利用する実運用には向きません。
なぜなら、上記の行数不定などが解決できていたとしても、いつも「自動記録」させた時点の状態からマクロ起動できるとは限らないからです。 例えば前ページまでのサンプルは皆「Range」から始まっているので、処理対象シートがアクティブになっていることが前提となります。
少なくとも前提条件チェックなどの記述を追加させる必要があります。

本来は「仕様」を示すドキュメントが必要。
全くの「個人使用」のマクロであれば使用者が記憶していれば良いのですが、その場合は退職される時に消し去るべきものということになります。
そうではなくて、実業務で運用するようなマクロを「自動記録」かもしくはそれに多少手を加えたレベルのもので繰り返し利用するような場合は、本来は日本語の「仕様」に関するドキュメントを残さないといけません。
「自動記録」のマクロでは記録時点では何の日本語の説明も記録されないので「名前」「説明」程度しか「何をやっているマクロなのか」を説明するものがありません。

これは「自動記録」に限ったことではないのですが、
マクロの場合に問題となるのは、最初の作成者が作成時に詳しいドキュメントを残したとしても、実行するマクロと離れたところに保管していたのでは意味がないものになってしまうということがあります。 たとえば後からマクロを改変させた時にドキュメントの修正を忘れてしまうとか、担当引き継ぎの時にドキュメントの引き継ぎが漏れてしまうとかが考えられます。

少なくとも「コメント」を入れて下さい。 前頁の最後の方のサンプルで行なっています。
「コメント」は「名前」「説明」のところはもちろんのこと、内部の各処理ステップで「何をやっているのか」を日本語で説明するものです。
「コメント」の他に仕様に関するドキュメントがある場合は、「説明」のところに所在フォルダやファイル名を記述しておくべきでしょう。
それが継続的に利用するマクロである場合は、この他に作成者、作成日、最終更新日、更新履歴(更新日、Ver、更新内容)も必要です。

けれどやって見ると、初めての人でもどうやって動くかが解る。



最初はソースコードを理解し、不要な記述を削除することから始めてみる。
「私もそうしました」です。VBEでソースコードを見て「手」を入れて見ましょう。壊してしまっても保存させなければ良いのです。

経験者でも忘れたプロパティを調べるのに使う。
私もそうですが、かなりベテランの方でも「自動記録」は使います。記録させたものを使うのが目的ではなく、「コードの記述を忘れたプロパティ操作だから」とか「今まで記述したことがないプロパティだから」などです。記録させたソースコードの該当構文の取得が目的です。