マクロ(VBA)

独学でマクロ(VBA)の習得に必要なものを紹介

今回はマクロの習得に必要な物を紹介していきます。

100%精神論だけになっているので、役に立つかどうかは不明です。あと、これから紹介する内容って根っこは同じ考え方だと思いますけどそれ込みで見ていただければと思います。

これからマクロを勉強していくぜ!って人は参考にしてみて下さい。

では紹介していきます。

自分にはマクロなんて無理って言う思い込みを捨てる

まずは、思い込みを捨てることが大事ですね。

私は今までたくさんの同僚にマクロをオススメしてきましたが、誰一人として学習してくれる人はいませんでした。

大体帰ってくる言葉は「自分には無理なんで…」「数学出来ないんで…」「そういのって天才しかできないんでしょ」でした。

いやいやいや

マクロを作るのに地頭なんていらないし、ましてや数学の知識なんて1mmも使わないですからね。

プログラミング=数学って思いがちですが、私も思っていましたが使う分野と使わない分野があって、業務レベルのマクロだったら数学何て1mmも使いません。

高一で私立大学の受験を決めて数学を捨てた私が言うから間違いないです。で、再度にはなりますが、マクロに地頭なんて関係ないです。どういう仕組みで動くかと、どういものを作りたいかを整理できれば誰でも作ることができます。

逆にマクロ勉強したけど難しくてできなかったって人は、たぶんどこかしらで近道をしてしまったんだと思います。

基礎から積み上げていけば必ず作ることができます。

なので、自分には無理という思い込みを捨てて、まずは入門書を1冊買って勉強してみて下さい。

マクロの習得には調べる能力が必要

これは仕事全般に言えることですが、今の時代ネットにアクセスすれば色んなことを知ることができます。

なので、自分で調べる能力というのがかなり重要になってきます。自分が知りたいことで検索しても出てこない場合は、検索ワードをずらして検索してみるとか。

最終手段として英語で検索してみるとかもありですね。

なので、何かしらのエラーで詰まったりとか、ここはどういう風に作ればいいのかわからなくなったとき、2,3回調べて出てこないからあきらめる用ではマクロの習得には時間がかかってしまいます。

検索ノウハウは自分で見つけるしかありませんが、とりあえず続けていれば何となく、このワード入れたらいいんじゃね?とか前はこうだったからこっちの角度から検索してみるかなどをつかめてくるのであきらめずに頑張ってください。

独学マクロは根気があればなんとかなる

で、調べる能力と被ってる部分があるんですが、調べるのにはやっぱり根気がいります。

たぶんメンターとかがいれば、一瞬で解決するであろうことも独学だといちいち調べないといけないです。

私もどうしてもあることを実現したくて4時間調べてもその答えが見つからなかったんですね。その日は諦めて次の日再度チャレンジしたんですけど、やっぱり欲しい情報は見つからなかった。

なので、ちょっとお遊び気分でDeepLという神サイトで質問を英語に翻訳して検索したら10分で答えを見つけることができたんですね。

この時は嬉しさ反面、もっと早く試しとけばよかったと複雑な気持ちになりました。

けど、この経験があったから、それからは日本語で検索しても見つからない場合は英語で検索するというノウハウが積み重なりました。

ってな感じで数時間調べることもあったりするので、独学でマクロを習得するのには根気は絶対欠かせない要素になっています。

バグを見つける注意力と試行錯誤する根気

独学者の一番の敵はエラーですね。

最初はエラーが出ただけで、この世の終わりみたいな感じがしてしまいますが、何度も繰り返しているとエラーの原因はすぐにわかるようになるので安心してください。

ただ、エラーにも2種類あると思っていて、根本的なコード間違いによるエラーと微妙な書き方のミスによるエラーですね。

前者の根本的なコード間違いによるエラーは正直言って見つけるのは超簡単です。ネットで調べても答えが転がっていますし、エラーコードから大体察しがつきます。

厄介なのはちょっとした書き方ミスによるエラーですね。よくあるのが半角スペースの有無やクォーテーションの有無ですね。

こういった細かいミスは注意深くコードを見ていかないと見つけることはできません。

また、大体あたりをつけてコードを書き替えていってどこでエラーが出ているか突き止める試行錯誤も必要になります。

さっきの根気にもつながるのですが、エラー探しは泥臭い作業の連続なのでこれに耐えられるメンタルが無いとマクロの習得は難しいと思います。

逆に、上級者になるとエラーが出てくるとちょっと興奮してくる場合もありますし、原因を見つけた時は最大のエクスタシーを感じることができます。

吸収しないと新しいものは作れない

仕事でマクロを使っていると、色んなマクロの知識が必要になります。例えば、資料を作るマクロ、メールを自動で送るマクロ、情報を集計するマクロ、基幹システムに取り込む用のファイルを作るマクロ…

みたいな感じで作るマクロによって、求められる知識は変わってきます。なので、常に九州をしていかないと色々なマクロは作れなくなってしまいます。

ただ、一つ安心してほしいのが、一度作ってしまえば以後はそれを加工、流用して使いまわせるので、辛いのは最初だけですね。

吸収って聞くとおおげさに聞こえてしまうかもしれませんが、要はネットで調べるか他人のマクロを読み解くことですね。これをやり続けていたら自然と作れるレパートリーは増えていきます。

最後は好奇心と連想力

これもさっきの吸収と被るのですが、独学マクロニストとして成長していくには好奇心と連想力が必要になってきます。

好奇心とはつまり、この業務ひょっとしてマクロで自動化できるんじゃねって仮定して色々調べてみて実践することですね。

連想力とは今まで自分が作ったマクロを振り返り、これちょっと加工したらあれに使えるかもとか、コードで行き詰った時にそう言えば前に似たようなコードを作ったからその構造を参考にしたらいけるかもみたいな感じですね。

要は、自分が今まで作ったマクロを把握、覚えておき、それを他の場面でも流用できるかどうかを常に考えておくという事です。

これをしておかないと、私みたいな失敗をしてしまうかも…

とあるマクロを2,3日かけて作成していたんですね。よっしゃ、もうすぐ完成やって時に脳が活性化して、「あれ、今回1から作ったけど、これ前作ったアレ使えば一瞬だったんじゃね」って気づくことがよくあります。

なので、私は自分が作ったマクロ、他人に渡したマクロも含めて一つのフォルダで管理して暇な時に見返すようにしています。

関連記事