50の手習い~人生実験室

人生100年時代。50歳から人生を開拓出来るのか?自分の身体を使って実験中

VBA習得への道(1月11日)

1月11日 土曜日

 

今回のお勉強は、三太郎式マクロ勉強法ゴールドディスクのレッスン。レッスン184~186を行いました。

★レッスン184
非連続の列や行を指定するマクロ
IE連携が上手くいかずに凹んでおりましたがまた通常のレッスンに戻りました。
今回は非連続ということで、1~10の連番とか、A~Eの連続した列とかではなくて、連続しない列や行を選択する場合のレッスンです。
今回はマクロの記録をすれば容易に分かる内容で、セルを選択する時に連続する時は「:」を使って、そうではないときには「,」を使うというのを割と無意識にやっていましたが、改めて理解出来ました。
どこでも言われていることだけど、コードを丸暗記するよりもまずは動作を「記録してみろ」っていうことですよね。

★レッスン185
印刷範囲をデータが存在する範囲にして自動印刷するマクロ
こちらもまたマクロの記録を活用します。内容そのものは簡単なんですが、どういう動作を記録してそれをどのように活用するか。という発想が思いつくかどうかが重要なんですよね。
私は全く思いつきませんでした。rows.countでデータの終点を探してセル範囲を指定するくらいかなあと思っておりました。
なかなか今回もややこしい内容です。セルの指定を変数を使って行う場合が複雑になると私は途端に訳が分からなくなってしまいます。
変数がどの数値でどのセルを指しているのかをしっかりと把握できるようにならなければ。

★レッスン186
シートのデータを左寄せにするマクロです。
動作を記録して上手くアレンジをするレッスンです。そもそも空欄が混じっているデータを左寄せとか上寄せとかする状況が思い浮かびづらいです。
気付いたのですが、「その作業をする状況、その作業に迫られる状況」をリアルに思い浮かべられないと勉強が身に付かないような気がしました。
例えば請求書の発行マクロとか月次やら週次やらで発生するような作業は「恐らくこんな業務の時にこのマクロは役に立ちそう」といったようにそのマクロを動かす状況が具体的に頭に浮かぶのでやる気にもなるし、出来上がりを思い浮かべやすい(だからどういう動きをするマクロを作ればいいのかイメージが浮かびやすい)
でも、今回のような「これをすることによってどんなメリットがあるんだろう?」的な内容だと最終的にどんなシートになればいいのかのイメージもわかないし、学習もはかどらないような気がしました。
ただ、列全体を選択した時にそれを可変にする場合のコードの書き方などは非常に勉強になったので今回のレッスンは良い点もたくさんありました。
それから、行(row)の中でデータの存在する最終セルの取得の仕方はもうバッチリなんですが、
これが「列(collumn)」になった場合はまだ手間取ります。
つまり下方向(行)でループを回すのではなくて右横(列)でループを回す時のやり方がまだ不安定と言う事です。あまり使う機会がないからね。

 

www.start-macro.com