3日でエクセルマクロ(VBA)を覚えた方法
初めて上司からマクロ制作を頼まれた時、私はそんな機能がエクセルにあるなんて全く知りませんでした。しかし、そんな状態でも3日で頼まれたシステムを完成させ、その後2週間ほどで思い通りのマクロが書けるようになりました。
あの頃の成長速度を日々の学習でも活かしたいな〜、と思ったので今回は当時の勉強方法をまとめてみました。
前提
1.事前に多少のプログラミング経験あり
マクロに触れる前に、html、css、C++などは書いたことがありました。基礎は身についている状態です。
2.誰にでも合う学習法ではない
当然ながら、誰にでも合う学習方法とは限りません。悪しからず。
習得手順
1.自動記録で書いたマクロを読み解く
エクセルには「自動記録」という機能があります。これは、録画ボタンを押した後に行った操作を、自動でマクロに書き込んでくれる機能です。
この機能で生成したマクロを読み解いて、基本的な書き方を理解していきました。
理解と言ってもふんわりしていて、Range("A1").Selectと打つとセルを選択できるんだな〜とか、Range(Rows(1)).Deleteで行削除か〜とか、それくらいです。
2.調べながらコードを改変する
大変便利な自動記録ですが、ちょっとした問題があります。それは固有のセルしか選択できないことです。そこは変数で取得していきたいところ。
こういった壁にぶつかった時は、Google先生に質問しながらコードを書き換えていきました。
「VBA セル 変数」や「VBA ループ」などで検索しまくり、解決するまでいろんな記事を読んでは書き換え、読んでは書き換えの繰り返しです。
3.エラーと格闘(理解を深める)
改変すると当たり前のようにエラーが出ます。
そんな時もGoogle先生に質問します。エラーが出なくなるまで、調査、修正、実行の繰り返しです。
そう、根性論です。
しかしこの経験があったからこそ、何かしらエラーが出た時に予測が立てやすくなりました。回り道も決して無駄ではありません。
どうして熱量を保てたか?
仕事が楽になった
マクロによって一瞬で仕事が片付く瞬間がたまらなかったんです……!
「これを覚えたら自分が得をする」という、絶大なメリットはモチベーションを保つのに非常に有効でした。
パズルみたいで楽しかった
これは敵性の問題な気がしますが、プログラムを組んでいる時間は、まるでパズルゲームを説いているような感覚でとても楽しかったんです。
煮詰まったら散歩に出かけ、あーでもないこーでもないと思案し、「この方法ならいけるかも!」と閃いたコードを書く、実行する、上手くいく、やったー! って感じです。これは参考になりませんね、はい。
以上、こんな感じで3日で覚えました。
何かの参考になれば幸いです。(なるのだろうか?)
最後までお読みくださり、ありがとうございました〜!
この記事が気に入ったらサポートをしてみませんか?