最近、仕事の依頼もあり、ExcelVBAを使う機会が多くなってきました。
VBAでマクロを作るようになって3年くらいなのですが、ある程度、自分でも上達してきたと実感があります。そこで、マクロ作成の勘どころが分かってきたので記事にしたいと思います。
この記事は、ExcelVBAについて全く知らなかった私が、独学でVBAを学び、自分でマクロを設計して作れるようになった経験を元に、上達のポイントをお伝えする内容です。これからExcelVBAを学習されたい方は参考になると思いますので是非、ご覧ください^^
それでは詳細をどうぞ!
VBAのコードは読めればほぼOK!
自分でマクロを設計して作っていると感じること、それは、
コード書けなくてもマクロ作れる!ということです。
上級者はどうかわかりませんが、やりたいことが決まっていたらWebで検索すると解決することが多いです。私も困ったらWebで検索して色んな企業や個人のブログを参考にコードを使わせてもらっています。
例えば、「あるファイルを開いて、内容をコピペしたら閉じる」というコードもGoogleでこんな感じで検索すると色々出てきます。
- 「VBA」+「ファイルを開く」
- 「VBA」+「コピー・ペースト」
- 「VBA」+「ファイルを閉じる」
大事なのは公開してあるコードを参考に、自分の場合はどうすればいいか、適用させることです。コードを編集することが必要ですね。
コードは完璧に書けなくてOKです!
何が書かれているか、理解して読めればほぼ問題ないことが多いですよ^^
では、コードが読めるようになるにはどうしたらいいでしょうか?
読めるようになるには手を動かす
コードを読めるようにするには、テキストや参考書を読みながらとにかく、自分で手を動かしてコードを書いてみることです。
本を読んで勉強していると、その時はわかった!っとなるのですが、あとで実際にやってみると、全く理解できていないことが多いんですよね^^;
やはり、インプットをしたらしっかりアウトプットすること!それに尽きます。
失敗してもいいので、どんどん書いてみる。繰り返しコードを書いて、実行して、デバックして、といった経験をすることでコードを読む力が身につきます。
テキストを見るだけだと、おもしろくないですしね^^;
自分の書いたコードが、思い通りに動いた時は、すごく感動しますよ!
それともう一つ、コードを読む力と同じくらい、私が大事だなと感じているものがあります。
それは、柔軟な発想です。
柔軟な発想で目的までの道筋を定める
柔軟な発想と聞くと、マクロ作成と関係ないように感じるかもしれません。
でも、実際にマクロを作成し始めるとわかると思いますが、目的を達成する方法は何通りもあります。
例えば、繰り返し処理のステートメントは「For~ Next」、「Do Loop」。
分岐処理は「IF」、「Serect Case」など、色々ありますよね。
その時々に応じて、自分の達成したい結果を出すには、どのようなコードやステートメントを使うべきなのか、柔軟な発想で組み合わせる必要があります。
時にはエラーが出て、うまく実行できない、そんなこともあるでしょう。
目的を達成する道のりは一つではなく、代替案を考える柔軟な発想で乗り越えられると、自分自身の成長も感じられるのではないでしょうか。
まとめ
今日は、VBAをこれから学びたい、という方向けに上達するポイントについてお伝えしました。
- コードは完璧に書けなくてもいいと割り切ること
- コードを読む力をつけるには自分で書いてみること
- 柔軟な発想をもつこと
是非、ポイントを押さえて楽しみながら取り組んでみてください。
本日の記事は以上です。
ご覧いただき、ありがとうございました!