VBAは便利そうだけど、プログラミングっぽいしできそうにない…
勉強してみたことはあるけど、難しくて挫折してしまう…
VBAやマクロが使えれば、便利で効率化ができると分かっていても、難しそうだし理解できない、と思ってしまう方は多いと思います。私自身も、文系の営業マンだった新卒時代、vlookupがギリギリ使えるくらいのPCスキルで、VBAとは縁遠い非効率な業務を行っていました。
ただ転職を機にVBAを勉強し始めると、VBA学習は真面目にやればやるほど習得できないということに気が付きました。もっと早くに気づいていれば、無駄な参考書を買わずに済んだのに…と少し悔しい思いをしたのを、覚えています。
本記事では、私が独学で学んで感じた、プログラミング言語で重要なポイント3つと、学習を進めるための4つのステップを紹介していきます。学習するポイントと、覚悟するべきポイントを知ることで、挫折する可能性は一気に下がるはずです。
皆様もポイント、ステップを押さえて、VBAやプログラミングでの業務改善をしてみてください!
VBA学習3つのポイント
ポイント①:プログラムは「パラシュート式学習法」で学ぶ
パラシュート式学習法とは、最初から目的(ゴール)に取り組み、解決するために必要な要素だけを学ぶ学習法です。基礎から学ぶ通常の学習法と逆で、答えから必要な知識を都度学習していくやり方になります。
私はプログラミング学習を挫折してしまう要因の一つに、基礎の無意味さがあると考えています。例えば、請求書を作るVBAのサンプルはよくありますが、業務で使えるものでもないですし、やっていて面白くもありません。こういった無意味な基礎をやっている間に、VBA学習が分からなくなり、難しく感じてしまうのだと思います。
だから、パラシュート式学習法をお勧めします。パラシュート式学習をプログラミング学習で行う場合、コピペで使えるレベルのコード(ゴール)を用意し、修正・解読しながら学習していきます。これにより、自分が効率化したい作業をVBA化することができ、業務改善をしながら、学習を進めることができます。
後で紹介しますが、ChatGPTでコードも作成できるため、パラシュート式学習の敷居はかなり低くなっています。ぜひともプログラミング学習はパラシュート式学習で学んでみてください。
ポイント②:とにかく動けばOKという気持ちで取り組む
2つ目のポイントは「とりあえず動けばOK」という気持ちで取り組むことです。きれいなコード、ルールに沿った記載なんて後回しで、とにかく動くコードを分かる書き方で書くことが、ポイントです。
商品として販売したり、IT部署で複数人で管理する場合は別ですが、自分一人が管理するレベルのVBAであれば、書き方のマナーやきれいな書き方を学ぶことは正直なところ時間の無駄です。プログラミングは身体学習ではありませんので、書き方のマナーは後から学びましょう。
重要なのは、実際に自分の業務を効率化することです。そのための準備は、短いに越したことありません。コードの改善やマナーはその後の課題として後回しにし、まずは動くものを作り上げることに集中しましょう。
ポイント③:エラーに負けない
ひとつ覚悟が必要なのは、プログラミングはエラーとの戦いという点です。しょうもないエラーを見つけられずに1時間すぎるのが、プログラミングです。私も「s」が抜けていることに気づかず、3時間近く苦しんだことがあります。
特にパラシュート式学習法を行うとき、エラーは頻発します。むしろ、エラーの解決のために調べることが「学習」の9割です。エラーが発生し、その解決策を学ぶために努力し、次のエラーが現れるというサイクルを繰り返しながら学習を進めることになります。
ただし、基礎から順に学んでいってもエラーとの戦いは同じように起こります。基礎知識が不足していることによるエラーもありますが、学んだとしてもエラーは避けられません。
プログラミングはエラーとの戦いと割り切り、エラーに負けずに学習を続けることが、学習の3つ目のポイントとなります。エラーが起きたからといって挫折せず、むしろエラーを乗り越えることで成長する姿勢を持ちましょう。
VBA学習4つのステップ
ステップ①:ChatGPTを使って、VBAを作る
パラシュート式学習法を行う為、まずはゴールであるVBAを用意する必要があります。VBA化する作業を決めて、ChatGPTを使ってVBAを作るところから始めましょう。
VBA化する作業の見つけ方や、ChatGPTでのVBA作成方法などは、別ページにまとめていますので、ぜひそちらをご覧ください。
ステップ②:ChatGPTのVBAに機能を追加してみる
ChatGPTで作成したコードには、おそらく使い勝手が悪い部分があると思います。次はそれをコードを編集して、改善していきましょう。
どのコードを変えれば、動きが変わるのか。どんなコード追加すれば、どういった動きが追加されるのかを考えることで、なんとなく動きが分かってきます。
基礎を学ぶ前にステップ①~②を繰り返して、まず『5つ』業務をVBA化してみてください。都度ネットで調べたりしながら、目的の動きをするコードを作ることを繰り返すことが、一番の勉強となります。
ちなみにこれも、ChatGPTを使って行う方法を記事にしているので、参考にしてみてください。
ステップ③:コードを一行ずつ読んで、動きを理解する
ステップ①~②を繰り返して、とりあえず動くVBAを5つほど作ると、なんとなくコードの動きが分かるようになっています。ここからは、基礎を学ぶために、これまで作成したVBAのコードを一行ずつ読み進めていきましょう。
ChatGPTで作ったコードや、ネットにあるコピペで動くVBAは、コメントがしっかり入っているため、読み返しても分かりやすい内容になっていると思います。
一行ずつ読みすすめ、この一行は何をしているのかを、一つずつ確認することで、VBA全体の動きやルールが分かってきます。
ステップ④:自分で1からコードを組んでみる
一度一行ずつ読んで、動きを理解したら、コピペやChatGPTに頼らず、自分の力で1からコードを組んでみましょう。これまでのコピーや使いまわしでもいいので、自分で打って作ってみてください。
ChatGPTなどでVBAを作成できるようになりましたが、やはり人が作ったコードが一番効率的なVBAです。業務内容や自分を含めた使う人の癖を理解してコードを組むことは、いくらAIに教え込んでも限界が来ます。そういった意味でも、最終的には一人でVBAが組めるレベルまで、学習をするとより効率的に仕事を行うことができます。
※VBA全体の流れを理解するのはこちらの記事がおすすめです。
最後に
ゴールから初めて、必要な時に調べて学ぶ。
とにかく動かす、エラーに負けない。
これらが、学習を続ける最重要ポイントです。とにかくここを念頭に置けば、VBAやプログラミングは、必ず習得できるスキルだと思います。
皆さんもパラシュート式学習法でVBAスキルを身につけ、効率的にスキルアップをしていきましょう!
コメント