エクセルVBAはコンピューター言語です。
エクセルのワークシートを操作する技術とは、また違った学習が必要です。
独学で習得するためのポイントは何か。
大切な7つのポイントを解説します。
こんにちは、じゅんぱ店長(@junpa33)です。
今回はエクセルVBAの独学での勉強法についてです。
おかげさまで、エクセルVBAテーマの記事もそこそこ増えて来たかと思います。
そういった中、時々ご質問いただく内容で、
「エクセルVBAの上手な独学方法を教えてください。」というのがあります。
自分の場合は完全独学タイプです。
この記事をお読みいただければ、
じゅんぱ店長が行っている独学の方法が、どういった方法かを分かっていただけると思います。
自分的には独学の勉強法として、大切な7つのポイントを紹介します。
- 「マクロ記録」ツールでまず、とにかくVBAに触れてみる
- 良書、教科書・参考書と出会う
- 学習サイトの動画学習を使って効率を上げる
- 実務で使っているコードを見つけ、生きた学習教材にする
- 自分用のコードライブラリーを貯める
- 自分で考えたプログラムを1から組み立ててみる
- 習得するエクセルVBAの目標地点を再度見つめる(資格取得にステップアップするかどうかなど)
コンテンツ
エクセルVBAを独学するには。
7つのポイントの前にまず考えておくこと
エクセルには、エクセルVBAという機能があって、それを使えば業務の自動化が出来る、時短化することができる。自分の考える業務改善ができる。
で、それならと、エクセルVBAを勉強しようとされる方も多いでしょう。
勉強の方法としては,
ごく普通に、今までからやってきた勉強のやり方と同じ。まず、教科書・参考書の熟読から始める人がほとんどでしょう。
そしてしばらくの間は、読書に耐えて理解しようとします。でも、そのうち頭がパンクし、読書をリタイアしてしまうでしょう。
それはまるで、漢字を知らない子供が、漢字を飛ばして平仮名だけを読んでいるようなものだからです。
エクセルVBAとは、VB(ビジュアルベーシック)というプログラム言語のA(アプリケーション)専用バージョンの言語です。
エクセルVBAは言語ですので、文法・構文、単語の意味するものが分からないと当然、エクセルVBAのコードを理解することができません。
つまり、効率的に勉強する独学を続けていくコツとしては、
教科書・参考書を読破してエクセルVBAを理解していこうとするのではなく、
既にある(動いている)プログラムを持ってきて、コードを分解してそれぞれの働きを理解していくこと。
いわゆるリバースエンジニアリング的に勉強することが効率のいい方法になります。
英語のペーパーバックを読む時の、辞書を引きつつ、その時までに自分で積み上げた理解をもって、読み解いていくのと少し似ていると思います。
<英語を理解するためにはまず英和辞典を読破してから、次に英文に取り掛かる、という人はあまりいないと思います。>
「エクセルVBAを独学で勉強するって本当に出来ますか?」
「出来ます!」
ただし、勉強方法を工夫して、時間だけがかかる効率の悪い方法は避けるべきです。
独学での、目標到達の期限設定「いつまでにはどこまでに・・・」は、大変な重圧です。
勉強スタイルは基本、” Slow And Steay型” (ゆっくり着実に)の「二宮金次郎さん」となるからです。
持続がしんどくなったら、無理せず素直に期間を延ばしちゃいましょう。
あくまでも自力の独習です。すべては自分で決めることが出来ますから。(でも、目標は設定したいです。)
エクセルVBAを自分のスキルとして、収入UPの武器として使おうと考えている人は、さらにプラスαの勉強方法(講師による学習)も考えていった方が良いでしょう。
1.「マクロ記録」ツールでまず、とにかくVBAに触れてみる
エクセルVBAの知識をほとんど持たない人は、読書よりも、まず実際にVBAコードに触れてみましょう。
POINT
実際に動くエクセルVBAコードを教材に、コードの意味内容を読み解いていきます。
動きが目で見てわかるコードでないと意味がないです。
「エクセル関数はちょっとは知っている。」はチョッとプラス
「エクセルVBAコードは知らなくても、エクセルシート関数はいくつか知っている。」という人も多いと思います。
実はそういう人は、「エクセルVBAコードについては知識ゼロです。」ということでもないです。
SUM、VlookupやMatchなど、普段使っているワークシート関数は、エクセルVBAでもそのまま重要な関数として使います。
エクセルVBAコードで利用する場合の構文の違いはありますが、関数の意味はほとんど同じです。
気分的にはこれだけでも、エクセルVBAコードに対する親近感も強くなり、理解スピードもより上がると思います。
これはちょっとプラスです。
.
マクロ記録ツールを使ってみる
エクセルの開発タブに、マクロの記録という機能があります。エクセルVBAコードで、操作を自動で記録しれくれます。
このボタンをONにしている間、エクセルの操作作業はマクロとして記録されます。
例えば、ONの状態でシートの印刷してみます。
A4タテ印刷(マクロ名:Macro1)
A4ヨコ印刷(マクロ名:Macro2)
マクロの記録で記録されたコードはこのようになります。
Macro1とMacro2の違いは①と②のコード指定の違いだけです。①はタテ向き、②はヨコ向き印刷です。
「印刷しますよ。」のコードは③だけです。それ以外は印刷条件の設定を長々記述しているだけです。
今回のこのマクロの記録で、印刷設定に必要なVBAコードは、実はタテ・ヨコのコード設定と印刷命令だけです。
「たったA4紙一枚印刷するのに、これだけVBAコード記述しなければいけないの?」と思いますが、
そんな訳がありません。
エクセルVBAの参考書で、「印刷」を調べてみます。
エクセルVBAの参考書の目次で「印刷する」とか索引で「Printout」とかの項目で、ページを開いてみます。
その説明内容と、このマクロの記録のVBAコードを比べてみて、今回の「印刷」の場合は、最小限必要なのが4行ほどのコード記述だったと分かると思います。
Sub タテ印刷()
With ActiveSheet.PageSetup
.Orientation = xlPortrait
End With
ActiveSheet.PrintOut
End Sub
Sub ヨコ印刷()
With ActiveSheet.PageSetup
.Orientation = xlLandscape
End With
ActiveSheet.PrintOut
End Sub
では、「マクロの記述のVBAコードは不要なコードだらけ?」となりますが、
今回の印刷設定に関係していない項目の
例えば、用紙サイズを指定するコード、前後左右の余白取り、印刷する範囲や印刷枚数などを設定するためのVBAコードもその中に記述されています。
(デフォルトで設定されている部分のコードです。)
逆にそれらのデフォルト設定を変更したい時に、必要に応じてそのVBAコード記述を利用して、独自作成するエクセルVBAのコード作りに生かしていくことも出来るということです。
2.良書、教科書・参考書と出会う
自分にあった良書、教科書・参考書に出会うことは、勉強を進めて行く中で最重要です。
エクセルVBAに限らずですが、解説本や教科書といわれる本の中には、
実務的ではなく、余りにも単にプログラム言語の説明に終始しているだけの参考書もあったりします。
これから独学でエクセルVBAを始めようと思っている人や始めだした人にとっては、このような参考書にハマってしまうと最悪です。すぐに勉強が嫌になってしまうでしょう。
自分に相性が良く、エクセルの基本操作について、重点的に分かり易く解説してくれている教科書・参考書にめぐりあうことが大切です。
エクセルVBAの基本・基礎を詳しくとか、うたっていても、
見るからのページ数で只々分厚い本、文字中心の文字だらけの本、文字が細かい本、前置き(VBAのメリットや用語解説)がやたら長い本なども沢山あります。
これらでは、学び始めの人にとってはダメダメ本だと思います。
良書参考書選びについては、エクセルVBAの独習で良質な参考書を7冊選ぶ。良書との出会いは大切ですを参考にしてください。
1冊あたりの教科書・参考書の値段にビックリ
教科書、参考書を持つのは1冊だけではなく複数冊持つ方がいいです。1冊だけでは、知りたい内容が書いてないことも多いからです。
幾ら複数と言っても、4冊5冊というのではなく、学習進捗度に合わせて、基本3冊、中級・応用2冊という感じで準備するのがいいです。
予算的に言うと
エクセルVBAの教科書・参考書の新刊価格は、1冊大体2,000円から3,000円します。
先に揃えてしまえば、書籍代だけで1万円は突破してしまいます。高いですよね。
だからこそ、自分に合わない参考書で空振りをすることは非常にうれしくありません。
では、中古本ではどうかというと、それなりの中程度の質の本でも、それでも新本価格の8掛け程度はします。あまり安くはありません。
あまりお勧めはしませんが、エクセルVer.2007以前の参考書でも
今のエクセルバージョンではなく、以前のエクセルバージョンの参考書を見てみる。
エクセルの拡張子的に言うと、「.xlsm」でなくて「.xls」のバージョンです。
この拡張子名の違いを分かって、コードに置き換えてさえいければ、ほぼ多くの部分で使うことができます。
(あと行列の最大値なども異なりますが・・・)
自分の場合は、「大村あつし」さんの「かんたんプログラミング シリーズ」(書籍代 合計8,000円程)が欲しかったのですが、一度に揃いませんでした。
たまたま見つけたamazonの中古本ページで、
エクセルの旧バージョン(Ver.2000)で3部作コンプリート出来ましたので、躊躇なく購入しました。3冊合計で500円程だったと思います。
そこからスタートして今に至っていますが、今までにVBAコード作成で「あれ、違うなぁ」に出くわしたことはほぼありません。これはアリでした。
プログラム言語ですから、そんな大幅に変わることもないのは当たり前です。大きく変わったら違う言語になってます。
VBAのバージョンアップの差異については開発者レベルでもないので、初級レベルではあまり気にしなくても大丈夫です。
(むかしばなしと思ってください。)
どの様にすれば、良書に出会えるか
どの様にすれば、良書に出会えますか?
それは、 ぶっちゃけ ” 運 ” です。買って読んでみないと分かりません。
この記事 エクセルVBAの独習で良質な参考書を7冊選ぶ。良書との出会いは大切です で確認できます。
それでは身も蓋もありませんが、その運(確率)を高めることは出来ます。
運を高めるにはどうしたらいいか。それは出版物についての知識を利用します。
- 著者
著者は大事です。解説本の出版実績・キャリアは重要視しましょう。 - 出版社
出版社は、同ジャンル、パソコンジャンルの書籍をたくさん出版しているところがベストです。 - 発行年
最近の出版の書籍がいいことには変わりがありません。 - 市場流通
発行年と市場流通は、その目的の本の出版年によって既に入手困難になっていることもあります。またある程度流通してしまって品切れ重版未定になっていることもあります。
以下は、書店店長の個人的主観も大きいですし、大アバウトでの印象です。
著者は、
- 大村あつしさん
- 井上香緒里 さん
- 門脇香奈子さん
- 土屋和人 さん
出版キャリアも長く、読みやすい文章を書かれています。
出版社は、
- 技術評論社・・・兎に角、文章が読みやすい。文字の大きさ、挿絵の入れ方、さすがに専門出版社です。
- 秀和システム・・・結構読みやすいものが多い。ただ文字が少し小さめで、その分文章が難しく感じる。挿絵は多い。
- SBクリエイティブ・・・カラーを多用していて文章の印象には好感が持てる。ただ、文字が小さく挿絵の内容も見えない。
- インプレス・・・普通。技術評論社1回読み理解=インプレス2回読み かな?
出版社の編集スタイルによって、文章表現の違いあり読みやすさも違いがあります。
のような心象です。
エクセルVBAの独習でおすすめ参考書を7冊選ぶ。良書との出会いは大切です3.学習サイトの動画学習を使って効率を上げる
教科書・参考書中心の独学方法に加えて、エクセルVBAの解説動画を見て学習する方法があります。
動画学習だけだと、1回2回見るだけでは頭に入らないこともあるかもしれません。
先に基礎的な内容をあらかじめ参考書で予習していれば、見ている学習動画の内容もより理解し易く、
(個人的主観ですが)独習効果がより高まっていくという印象があります。
けれども学習サイトと一口に言っても、ン万円もする本格的サイトから、学習教室サイト、通信講座サイトなど千差万別です。
コスパや価格価値の乏しいものもあるのも事実です。
コスト的にも取り組みやすく、学習効果の面からもおすすめなのが
Udemyのオンライン学習です。
じゅんぱ店長も受講経験(21.3.23)のあるサイトです。
Udemyのオンライン学習を受講するための詳しい記事はこちらが参考になります。
エクセルVBA初級者がUdemyで動画学習する講座おすすめ5選と無料講座の上手な使い方。
オンライン学習
オンライン学習は、何といっても、手早くスピーディーに学習を始めることができます。
ン万円は払う気はないし、出来るだけコスパの良さそうな学習サイトを探している中で、砂の中の宝石を見つけました。(言いすぎかな)
自分もかつて、エクセルVBAエキスパート認定への道(ベーシックレベル)を受講(21.3.23)しました。
今一番注目株は「Udemy」が提供しているプログラムを購入してオンでマンドで受講するという方法です。
UdemyでエクセルVBAを学習する方法
(Udemy公式サイト)
まずは無料の受講生登録を行います。氏名とメールアドレス、パスワードの登録で完了です。
新規登録はすぐ完了します。ログインして、「エクセルVBA」と検索すると、即座にコースリストが表示されます。
現在(2021.3.22)全世界で6,451件あります。日本語で274件です。
結構低価格で受講できる機会が多く、平均5~6時間でセール期間中なら受講料2,000円以下が多いです。
支払い方法はクレジットカード決済です。(Visa、MasterCard、American Express、JCB、Discoverなど)
オフライン視聴可能
視聴については、PCはオンデマンド、スマホはオンデマンドと、更に、WiFi環境がないところでは、アプリでオフライン視聴も可能です。
エクセルVBAジャンルで最もレビュー数の多い講座はこれです。↓ 15,000人が既に受講しています。
Excel VBA[第1弾](超入門)エクセルが自動で仕事する!マクロの魔法 文系・非IT職もできるプログラミング
結構、このUdemyはお勧めで、
また別記事(エクセルVBA初級者がUdemyで動画学習する講座おすすめ5選と無料講座の上手な使い方。)でも詳しく紹介しています。
『オンライン講座は受講料が高い』という常識を払拭したUdemyは米国発で全世界に展開されていますが、
日本ではベネッセがパートナー企業になっています。
4.実務で使っているコードを見つけ、生きた学習教材にする
エクセルVBAのプログラムコードが見れるサイトに出会う
当サイトなどのような、実際に使っているエクセルVBAプログラムのコードを公開しているサイトに出会うことが重要です。
VBAはプログラム「言語」ですので、人によって言葉遣いが違うように、
VBAのコード構成も(結構)違う場合が多いです。
「コード処理のスピードはこちらの方が速い」と語られる場合もありますが、
長大な処理でなければ、体感的にさほどという場合もありますので、
まずは気にせず「こういう方法もあるのか!」的に理解しておきましょう。
まずは、
自分の勉強のためならフリーに利用できるところが多いですから、存分に参考にさせていただきましょう。
実用で使えるサンプルコードを拝借する
例えば、封筒宛名を作成するエクセルVBAプログラムや金種表を作成するエクセルVBAプログラムなどを拝借してきます。
実務に近いところで、実習できるエクセルVBAコードを使った方がより理解が進むのは当然のことだと思います。
当サイトでよろしければ、どんどん利用してください。
プロシージャー単位で、読んで、調べて、学ぶ
当サイトの例えで言いますと基本、エクセルVBAのプログラムコードは、それぞれのテーマごとに、モジュール単位で記事にしています。
そのモジュールの中には、各VBAコードの動作別にプロシージャーを作っています。
まず始めは、記述が短いVBAコードを抜き取りましょう。
エクセルVBAの動作が簡単そうなものから取り掛かる
たとえば、
Sub シートクリア()
With Cells
.ClearFormats
.ClearContents
.UseStandardHeight = True
.UseStandardWidth = True
End With
End Sub
これは、金種表作成エクセルVBAのModule2に記述されている「シートクリアのためのコード」です。
このコードの動作を調べるために、白紙のエクセルBOOKを立ち上げて、このプロシージャーを、Module1にでもコピーしてください。
で、このエクセルVBAコードを実行したときに、
(イタズラ書き)
(コード実行後)
のように、きれいに初期状態に戻りました。
ということで、次に、独習としては
「Clear」の意味と働き、「UseStandard」の意味と働き、「クリアするシートの指定はどうするの?」、「With End With ってどう使う?」
などの疑問を自己解決していきましょう。
自己解決するためには、自分で選んだ教科書・参考書が役に立ちます。
5.理解できたVBAコードを貯め込んでいく
このような積み重ねで、「出来ること」、「知っていること」を積み重ねていきます。
その記録には、白紙のエクセルBOOKを立ち上げて「エクセルVBAライブラリ」などと名前付け、
学習し理解できたエクセルVBAコードを、プロシージャー単位でModuleシートにコピーして貯め込んでおくことをお勧めします。
エクセルVBAのプログラムは、大小プロシージャーの集まりでもありますので、手持ちの引き出しとして持っていると、後々便利に使うことができます。
6.自分で一からエクセルVBAコードを組み立ててみる
勉強の進捗に合わせて、ゼロからエクセルVBAプログラムを組み立ててみましょう。
いつ頃からとは言えませんが、「作ってみようかな」と思ったときに作ってください。
ストックしておいたプロシージャーが大いに参考になると思います。
エクセルVBAプログラムの起動スイッチの作成も忘れないでください。
” ボタン一つでシートコピー ” とか ” ボタン一つで簡単印刷 ” とかであれば、
フォームコントロールやActiveXのコマンドボタンの設置が出来るようになってからかもしれません。
7.習得するエクセルVBAの目標地点を再度見つめる(資格取得にステップアップ)
専門的に研究している研究者であれば、ひょっとして最終到達点が見えてるのかも知りません。
独学でエクセルVBAを勉強する人の目的は、より自分の業務効率をよく熟したいためというのも多いでしょう。
なので普通では、そんなエクセルVBAスキルの最終点まで極めることもほぼ無いと思います。
けれどもそれ以外に、エクセルVBAスキルを、資格と言う形で到達点としている人もいるでしょう。
将来的には、自分の強みのスキルとして、勉強していこうと思われる場合は、やはり独学だけでは不足かもしれません。
それには、しっかりしたエクセルVBA講座を受講して、体系だった知識と技術を習得されることをお勧めします。
その自分の技術をお金に変えていくわけですから、どんな風にも吹き飛ばされないような知識を将来的には習得しなければなりません。
エクセルVBAを独学で勉強する方法のまとめ
「エクセルVBAを使える」というスキルは、個人の大きな武器です。
就活でも転職でも派遣でも、大きく有利になります。
エクセルVBAを習得するための目的は人それぞれです。
最終的に自分がエクセルVBA学習の目的地点をどこに設定するかで、先々の勉強方法が変わってきます。
また、学習の進度によって、目標到達地点を変更することもできます。
独学の勉強法として、
- 「マクロ記録」ツールでまず、とにかくVBAに触れてみる
- 良書、教科書・参考書と出会う
- 学習サイトの動画学習を使って効率を上げる
- 実務で使っているコードを見つけ、生きた学習教材にする
- 自分用のコードライブラリーを貯める
- 自分で考えたプログラムを1から組み立ててみる
- 習得するエクセルVBAの目標地点を再度見つめる(資格取得にステップアップするかどうかなど)
を説明しました。
勉強されるそれぞれの方が、自分の目標・目的地点を持って学習して行くことで、
迷子にならない、先の見える学習が出来てくると思います。
そのためにも遅くない時点で一度、
- 良書、教科書・参考書と出会う
- 学習サイトの動画学習を使って効率を上げる
- 講師サポートによりオンラインスクールで学習する
をチェックしてみることをお勧めします。
アンケートでポイ活しよう!!
アンケートに答えれば答えるほど ”使える” ポイントがたまります。