※なお、ここで「マクロ化しやすい」とはマクロの記録で対応できるかどうかという意味ではないので気を付けてください。
ここでの作業としては
・この表(A)を年月別に並び替える(すでにできている状態)
・年月シートを作成する
・(A)から年月ごとに、該当する年月シートへコピーする
と言った簡単な作業があるとします。
この場合は
・全体としては繰り返し
・個別としては、年月が同じない、シート作成のシート名も同じでない、行の位置も年月によって変わる
等となります。これは「マクロに向いているかどうか」で、初心者やマクロを初めたばかりの方が迷う(悩む)ところではないでしょうか?
これは「マクロ化に向いている作業」でありますが、説明としては非常に感覚的な部分を含めているので難しいですが、見るべき点の1つとして繰り返しになっていない「年月」の部分です。
マクロ的?思考では「年月も固定値であってほしい」ということになりそうですが、それでは、この作業は成立しなくなります。
少し経験のある方だったら「最終月の行(末尾行、最終行)が分からないから範囲選択できない」等、技術的な制約も出てくるかもしれません。
しかしながら、この作業は
全体は繰り返し:データをコピー&ペースト、シートを作成
個別では繰り返し的:年月が1か月ごとに変わる
ような見方ができて、マクロ化対象業務と言えます。
この「年月が変わる」という部分については技術的な知識(変数)も必要になりますが、マクロ化できるおいしい?作業です。
マクロ化できるのは、これ(3列構成)がこのまま継続した場合です。
もし、このマクロを作成した後に次のような表形式に変更されると対応できません。
これは、3列であるという前提のもとでマクロが作られており、そのため4列になると4列目(D列)が漏れてしまうというパターンです。
これは非常にわかりやす例として示しましたが、現実的にはもっと深入りして確認する必要があります。
逆にいえば、
「年月が変わる」、「行数が増える」以外は固定してなければならい、「そういう規則であることが前提」とも言えます。
ここを誤ると「この表だけマクロが動く」的なものとなります。(最初はこの繰り返しだと思いますが・・)
そしてマクロ化に適した作業かどうかを判断するポイントとして「未知の第3者が作業できるか」を参考にするといいと思います。
これは単純に「知らない人に作業の内容を説明しただけで、その人が作業できるかどうか」です。
ここで重要なのは、「客観的に判断できる仕組みがあるか」です。
マクロ化するときに必要なのは「客観性」です。ありがちな光景で「見ればわかるだろ!」は通用しません。
同様に「あの人に聞けば分かるよ」、「分からないところが有ったら聞いてね」もマクロ的には通用しません。マクロ的な解釈で言うならば、「見なくても、聞かなくてもいいように、事前に説明をしてほしい」です。こうすることで(面倒ですが)それを踏まえてマクロ化することになります。経験的に、客観性がない作業であればあるほど、マクロ化が難しい、あるいは非常に大変であると言えます。
つまり「誰でもでき」るというのは客観性のある作業となっていて、マクロ化しやすいと言えます。
最終的には経験がものをいう部分も多いですが、本ページも参考に頑張ってください。