日々の業務を効率化するためにマクロを使ってスマートに仕事をしたいとは考えているけど
何から勉強していいのかわからない
エクセル初心者の私には難しそう・・・
なんて思ってしまいなかなか踏み出せないですよね?
実は私自身Excelマクロ(VBA)の学習を始めたころもこんな不安でいっぱいでした。
私はExcel自体ほとんど触ったこともなく『SUMって誰?どこの外国人?』という残念な状態でした。
そんな私でもExcelマクロ(VBA)の学習を始めて1ヶ月半後には株式会社 オデッセイ コミュニケーションズが運営しているIT資格であるExcelVBAエキスパートを取得するまでになり
3ヶ月がたつ頃には実務でも日々の作業を自動で行えるようプログラムを記述することができるまでになりました。
現在では今まで8時間(1営業日)かかっていた作業を2時間程度で完了できるようになり、テレワークとなった最近は趣味のブログを書きながら優雅に自由時間を満喫しています。
自社でもExcelマクロの研修を行っている私が超初心者の方が独学でも挫折しない効率的な学習方法を段階的にご紹介していきますのでぜひ参考にしてみてください。
ExcelVBAの学習を大幅に加速させるポイントを紹介
ExcelVBAを効率的に学習していくにあたり、事前に確認していただきたいポイント(コツ)があります。
できなくても問題はありませんが学習を開始した際に大きなアドバンテージを得ることができるので余裕のある方は事前にやっておきましょう
①タッチタイピング(ブラインドタッチ)の習得
PC操作の速さは学習時間を大幅に削減することができます。プログラミング学習は必ずサンプルコードなどを動かして学ぶ必要があります。
そのため、1つのコードを記述するだけで多くの時間がかかってしまっては学習スピードはとても遅くなってしまいます。
完璧に習得しなくても問題はありませんがキーボードを見ないでもある程度のスピードで打てるように日ごろから意識して取り組むようにしましょう。
タイピングの練習をしたいという方にお勧めのサイト
初心者の方は寿司打のお手軽コースから始めて徐々に難易度を上げていきましょう。ある程度できるようになったらイータイピングを始めるのがやりやすいと思います。
目安としては
1秒間に3~4文字くらい打てるようになれば十分かなと思います。
②実務で頻出するExcel関数の使用方法を理解する
VBAでは関数と同じような機能や記述方法も多くあります。そのため、文法がどのように構成されているかを理解しておくことで学習がとてもスムーズに進むようになります。
また、日ごろ使用している方であれば『この関数にもう少しこんな機能があったらなー』というのをVBAでは実現可能なことがほとんどですので
今後作成するツールのイメージもわきやすくなります。
ただし、関数は完璧に覚える必要はありません。実務で使われる関数にはどんな種類があり、どんなことができるのか?
どのような記述方法が用いられるのかをざっくりと覚えていただければ大丈夫です。
一例として私が実務でよく利用する関数をまとめた記事があるのでお時間があれば参考までにご確認いただければと思います。
これは実体験なのですが、実は私がVBAの学習を始めたときにはエクセル関数を全く学ぶことなく行っていたため、序盤にかなり躓いてしまいました。
個人的に大きく公開した部分になるためぜひ事前準備として理解できるようにしておきましょう
③ExcelVBAの習得までの学習時間を把握する
ExcelVBAはオブジェクト指向型のプログラミング言語です。『オブジェクト指向って何?』という方もまだわからなくて大丈夫!
とりあえずわかっていただきたいのはプログラミング言語の習得には一般的に800~1000時間必要と言われており、基礎をある程度理解するのにも250~300時間は必要です。
しかし不安になる必要はありません。ExcelVBAは特殊で簡単なツールであれば50~100時間で作成できるようになると言われており、習得するのにも200~300時間というプログラミング言語としてはとても低いコストで学習することができます。
1日の学習時間にもよりますが複雑な処理でなければ1~3ヶ月ほどでちょっとしたツール作成をできるレベルまで到達できるようになります。
ただ漠然と学習を行うのではなく、日々の学習時間を確保するためにしっかりとスケジュールを組み無理のない計画を立てておきましょう。
④自動化したい作業をイメージする
学習する際にぜひ持っていただきたいイメージがあります。それがVBAで何を作りたいかです。
たとえば、皆さんが日々の業務の中で
『いつも同じ業務をしているな』
『この作業面倒だな』
などと感じていることはないでしょうか?
VBAを実際に学習する際にどんな作業が自動化できたら自分が楽化を考えておくようにしましょう。
最初は簡単なものでも大丈夫ですので比較的近いゴール(目標)に向かって学習を行いましょう。また、ゴールに到達するまでの期間や一日の学習時間なども設定するようにしましょう。
ただ漠然と学習するよりもはるかに効率的ですし、学習する中で自身の作成したいツールに役立ちそうなコードを見つけられることもあるかもしれません。
『このサンプルコードはあの機能に使えそう!』
なんて発見があるとより理解も進みます。
ぜひ普段の業務やプライベートもしくは身近な人たちの困りごとなどに耳を傾けて作成したいツールのイメージを作ってみましょう。
⑤学習(input)をしたらすぐに実践(output)を行う
日々の学習だけではどうしても長続きしません。いつまでも基礎固めばかりしていても自信でツール作成のイメージがわきにくいですし、飽きてしまうこともあるかと思います。
簡単な基礎だけでも作成できてしまうツールは意外と多くあります。
- Excelブック①からExcelブック②に転記する
- 表の中から指定した値を含む行のみを色付けしてフィルタをかける
- フォルダの中にあるファイル名を取得する
など、シンプルな作業でもツールとして作成することで実際の動作を理解することができます。
また、これらの小さな機能を持ったツールを集約することでより複雑な動作を可能にすることもできます。
ちなみに私が最初に作成したツールはファイル名の一覧を取得するツールでした。
少し大変でしたが、多くのファイル操作をするツールの土台としていまだに役立っています。
おススメ学習法
超初心者から脱初心者までの学習方法について、私自身が実際に利用してよかったと感じたものや、初心者時代に知りたかったと思うものを紹介していきます。
主な学習方法としては以下の3点があります。
- 動画学習
- 書籍学習
- 学習サイト
どの学習方法にもメリットデメリットがありますのでそちらも併せてご紹介していきます。
動画による学習 難易度★☆☆
超初心者に最もおススメな学習方法です。とにかくわかりやすさにこだわりたい方向けの学習方法で、一度書籍や学習サイトでの独学で挫折してしまった方にもぜひチャレンジしていただきたい勉強法です。
メリットデメリットは以下の通り
- 重要な範囲だけを効率よく学ぶことができる
- 画面を見ながら並行して作業することができる
- 利用するサービスによっては質問などもしっかりと対応してもらえる
- 教材を定期的に更新しているため追加教材が出たり、新バージョンにも対応できる
- 専用アプリにダウンロードなどができるサービスもある
- サービスによって動画のクオリティに差がある
- 脱中級者から上級者の方には物足りない内容が多い
上記の通り、とにかく初めてExcelVBAの学習を行うという方や脱初心者を目指す方向けの教材が多いので、内容がとても易しくわかりやすさ重視で構成されていることから中級者以上の方には物足りない内容であることがほとんどです。
初心者の方にとってはどうしても躓いてしまったポイントを質問して解消できるなどの大きなメリットがあり、最も挫折してしまうような部分をカバーしてくれるというメリットがあります。
おススメ動画教材
おすすめの動画教材を紹介していきます。
なんだ!カンタン!Excel塾
YouTubeの動画コンテンツです。配信者の方は、VBAだけではなくExcelに関する様々な情報を配信しています。
また、VBAのコンテンツもレベル別に再生リストが作成されており、リスト通りに見ていくことで習熟することをコンセプトに作成されています。
話し方もとても丁寧で初心者でも学習しやすいコンテンツでした。
多少経験があると少し話のペースがゆっくり過ぎると感じる場面もあるので1.25~1.5倍速くらいで視聴するのが良いかもしれません。
とにかく一切のコストをかけずにVBAの学習を始めてみたいという方におススメのコンテンツです。
こちらは現場の最前線で実績のある方が動画教材を作成して配信するサービスとなります。
書籍購入分くらいの出費なら問題ないという方にはとてもおススメです。
不明点に対する質問も回数制限なく行うことができるので躓いた箇所や気になる点などを気軽に質問することができます。
一人で学習して挫折した経験のある方には安心して利用できると思います。
専用のアプリをインストールするとスマホに動画をダウンロードできるようになるので通勤や通学の時間のスキマ時間に学習することも可能です。
また、定期的に60%~90%OFFセールをかなりの頻度で行っているので必ずそのタイミングで購入するようにしましょう!
無料の会員登録を行うとセールのタイミングなども連絡してくれるようになるので追加の教材が欲しいときなどにも役に立ちます。
ちなみに私はUdemyで20以上の講座を通常価格が10000円~25000円程の中でセール価格(1000円~3000円)で購入し続けました。
万一、購入後に教材がわかりにくいなどがあれば30日以内に返金することができます。
私が実際に学習したコンテンツを紹介します。
Excel VBA[第1弾](超入門)エクセルが自動で仕事する!マクロの魔法 文系・非IT職もできるプログラミング
第1弾からはじまり段階的に難易度が上がっていく講座となっています。
順番に学習していくことで超初心者から段階的に中級者クラスを目指すことができる良質な教材となっています。
しっかりとした道しるべが示されているので横路反れずに学習を行えるので効率も高いです。
書籍を購入すると入門者専用など学習範囲を絞っている場合も多く、また、初心者~上級者まで網羅している場合はかなりの厚みのある書籍となっていることが多くモチベーションを維持する野庭難しいです。
1つ1つの教材がIT関連書籍一冊分の値段なので懐にも優しいです。
質問などのレスポンスも比較的早いので気になる箇所はどんどん質問して学習を進めることができます。
圧倒的な受講生の数と高評価レビューでUdemyのExcelVBA講座では圧倒的支持のあるシリーズです。
Excel VBA(エクセルVBA)はこれだけでOK~マクロで自動化するコツを詰め込みました【わかりやすさ重視】脱初心者
多くの入門書籍同様に複数のツールを作成しながら基礎を学んでいくスタイルの学習教材です。
最短で簡易的なツール(Excelのみで完結するレベル)の作成をできるよう構成されています。
複数の教材やテキストを買う余裕がない方にお勧めできます。教材の中で作成するツールは比較的実務でも応用のできる処理が多く、自身の作業自動化のヒントにもなります。
講師の方はブログでも情報を発信していてよく利用されるワークシート関数などの解説もしています。
前述した頻出のエクセル関数を学んでおこうという内容についてもこちらの講座で網羅することができます。
ExcelVBAの機能をすべて網羅しているわけではないのですが、ちょっとしたツール作成ができれば大丈夫という方はこちらの講座だけでも良いかもしれません。
この講座を終了後にはネット検索でほしい情報を見つけるくらいにはスキルと知識があるので問題ありません。
学習後は上級者まで網羅している書籍を辞書代わりに1つ用意しても良いかもしれませんね。
書籍による学習 難易度★★☆
初心者~上級者まですべての方におススメできる学習方法です。ただし、初心者の方には少しとっつきにくい部分もあります。
ある程度、知識がついてから辞書代わりにVBAの機能を網羅した書籍を1つ購入しておけば上級者になっても便利に利用できます。
メリットデメリットは以下の通り
- 教材が豊富で自身にあった書籍を選ぶことができる
- 超初心者から上級者まですべてのレベルで学習することができる
- 体系的に学ぶことができ、確実にステップアップできる
- 専門書なので広辞苑並みに分厚くてモチベーションの維持が難しい
- 質問などができる環境がなく、一度躓くとそのまま挫折する人もいる
- 書籍の為、更新(改版)が遅く情報が古い場合がある。
- 情報が細かく、実務で利用頻度の少ない情報もしっかりと学習する必要がある
- 荷物になる(分厚くて重い書籍が多いため)
体系的に超初心者から学ぶことができるものが多く、また、教材によっては上級者まで利用することができます。
しっかりとした基礎固めができることで応用の幅も広がり、VBAの機能をしっかりと学習することができます。
ただし、とにかく細かく情報が記載されていること、IT関連書籍は専門書ということもありかなり分厚いです。
そのため独学初心者にはかなりハードルが高く一度挫折すると期間が空いて忘れてしまうなんてこともあります。
可能であれば、動画学習を行ってVBAのイメージをしっかりと持ってから書籍に入る方が良いと個人的には思います。
また、書籍は改版される頻度が少ないためExcelやVBA自体のバージョンが更新されても古い情報を載せたままの可能性もあります。
書籍通りにコードを書いても思い通りに動かないなんてこともよくあることです。
書籍選びからしっかりと行い、できる限り新しい書籍を選んで購入するようにしましょう。
おススメ書籍教材
初心者向け
スラスラ読めるExcel VBAふりがなプログラミング
プログラミングコードを見るのが初めての方にお勧めしたい超初心者向け書籍です。
例文を中学英語のような翻訳をして直感的に理解できるようにしている変わった学習方法を行っています。
私はExcel自体がほとんど初めての為、プログラミングコードの意味を暗号のように感じていましたが、こちらを読んでから頭で自動変換されてイメージできるようになりました。
通常の書籍で挫折した方や薄い書籍で自信を付けたい方にお勧めです。
網羅している範囲は狭いのでVBA(マクロ)にたいする拒絶反応を無くす程度に考えていると良いかもしれません。
今後の学習の下地作りにとてもおすすめな書籍です。
私が読んでいたのは旧版でしたが、その後のVBA学習のハードルをぐっと下げることができたと思います。
Excel VBAのプログラミングのツボとコツがゼッタイにわかる本[第2版]
とにかく分かりやすさを重視した内容となっています。私も初めて購入した入門書になります。
わかりやすさを重視するあまり除外されている機能も多くありますが、専門書としては薄い方なので独学でも学習しやすいです。
続編も複数販売されているので順番に学習することもできますし、少し難易度の高い書籍を読むためのファーストステップにも利用できます。
簡単なツールの作成を通して学習していくスタイルなのでしっかりと学ぶことができればすぐにでもちょっとしたツール作成を始めることができるようになります。
続編や続々編なども学習するとそれなりのツール作成を行うことができるようになり中級者クラスまでステップアップすることができます。
ただし、同名の書籍で古いものがありますので購入される際には注意してください。
現状最新の改版履歴は2021年となっています。これより古い場合は情報に食い違いがあったり、書籍通りにコードを書いても動かない可能性もあります。
脱初心者~上級者
できる大事典 Excel VBA
VBAの入門書籍を読み終わった方から上級者まで幅広く利用することができるおすすめ書籍です。
初心者の方には難しいですが上記のした書籍を読破した方ならそれほどハードルは高くないはずです。
使いたい機能を調べることができ、実際のツール作成の際には一つは持っておきたいVBAの辞書になります。
VBAで実装できるほとんどの機能が網羅されておりツール作成のヒントにもなりますのでぜひ一冊は持っておくようにしましょう。
デメリットとしてはとても分厚くて重いので持ち運びを想定されている方は電子書籍版の方を購入することをお勧めします。
専用のアプロをダウンロードすればスマホやタブレット、PCなどでも読むことができます。
電子書籍版の方がはるかに安いのでコストも気になる方はぜひそちらも検討してみてください。
Webサイトによる学習 難易度★★★
初心者~上級者まですべての方におススメできる学習方法です。ただし、初心者の方には少しとっつきにくい部分もあります。
体系的に解説しているサイトは少なく、ポイントごとに説明がされているので知らない用語も多数出てくると思います。
そういったところから完全初心者にはあまりお勧めできません
ある程度、知識がついてからピンポイントで機能を検索して利用するのに向いていますが、初心者向けに解説しているサイトもありますので今回はそちらをご紹介していきます。
メリットデメリットは以下の通り
- 知りたいことをピンポイントで調べることができる
- 情報量が多く様々な実装方法を学ぶことができる
- 実際のコードをそのままコピペして利用することができる
- 情報量が多く、誤ったコードもある
- 体系的に学べるサイトは少ない
- 専門用語が多く初心者にはわかりにくい
サイトでの学習や検索して学ぶ場合にもできれば前述した動画サイトや書籍で入門レベルを学習した後に利用するのが理想的です。
ある程度、専門用語にも慣れてきたころに実装したい機能を調べるという形で活用する方が時間効率も高いです
おススメ学習サイト
超初心者向け
数少ない超初心者向け学習サイトです。『VBA(マクロ)ってなに?』というレベルの方からでも理解できるよう図や表を使って丁寧に解説されています。
このサイトだけで実践的なツール作成まで行けるとまでは言えませんが、これから学習していくうえで必要な知識(用語、関数など)を学ぶことができるためとてもおススメです。
初心者から~中級者
WordやExcelなどのMicrosoftオフィス関連ソフトについて解説しているOffice Proというサイトです。学習項目に「Excel VBA入門」があります。
書籍のような体系的な学習を行うことができ、初心者の方でも順番に学習していくことでしっかりとした知識を身に着けることができます。
正直、あまり実践的ではないですが基礎を学ぶために学習するのであれば十分です。
サンプルコードも充実しているので実際に動かしながら学習することができます。