
VBAを開発するためのメニューボタンをリボンに表示します。
エクセルのバージョンによって画面が微妙に違う場合がありますが、基本的な流れは同じです。
次にプログラムを書いて「Hello World」と表示させてみます。
「Hello World」と表示されたその裏側では何が起こっていたのかを理解します。
次にセルに出力された文字の大きさや色を変える、という操作をプログラムします。
VBAとは何か? を概観します。
VBAを身につけることでどのような変化が起こるのか? をお話します。
VBAであなたの行っている提携作業を自動化できます。
また、エクセル外部の仕事も自動ができます。
プログラムの裏側では何が起きているか? を「現場の職人さん」を使って説明します。
プログラムを保存するときの方法と、開発画面(VBE)を使いやすくする設定を学びます。
コーディングするときに、うるさいメッセージが表示されないようにする
コードを色分けして見やすくする
等幅フォントで見やすくする
VBE(開発画面)に配置されているパーツそれぞれの意味・使い方を解説します
コードを読むときに日本語に翻訳しながら読む方法を学びます
なぜインデントする必要があるのか?
コメントの書き方
文字列の書き方
数値書き方
四則演算、あまり、商、べき乗の書き方
日付・時刻の書き方
を学びます
プロシージャ(プログラムの塊の名前)と変数(値などを格納できる入れ物)の命名規則を学びます。
日本語の名前をつけることの是非も考えてみます。
マクロの記録を開始~終了までの手順
記録されたコードの読み方
マクロの記録の適切な使い方(考え方)
を学びます。
あなたが作ったマクロを実行させる4つの方法を学びます。
VBE画面から実行
ボタンから実行
複数のマクロを連続して実行
リボンの開発タブから実行
プログラミングをするといっても、単純に書き方を覚えればいいういわけではありません。効率の良い書き方、順番、作り方があります。これをプログラミング的思考と呼んでいますが、これを身に付けて効率的にプログラミングできるようになりましょう。
コード(プログラムの1行1行)の読み方を簡単に説明しています。 VBAは語順が日本語と似ているため読み方を覚えるのに、あまり苦労はしないと思います。
狙ったオブジェクト(セルやシート、ブック)を確実に操作する方法を学びます。
すべてのセルに対して何か操作をするという事は、普段の業務の中ではほとんどないと思いますが、頭の片隅に置いておくと、いざという時に便利かもしれません。
A1セルからD10セルまでを対象にする、といった範囲指定の方法を学びます。
ある行を指定して色を塗ったり、行を削除することが業務の中ではよくあると思います。ここでは行全体や列全体を指定する方法を学びます。
シートを指定する方法は何種類かあり、それぞれ特徴があります。ここではさまざまな方法でシートを指定する方法をを学びます。
オブジェクト名で指定する方法は、入力補完機能が効きますので便利ですが、注意点もあります。
オブジェクト名を変更するにはVBE画面で変更しますが。どのように操作すればよいのか学びます。
シートにはWorksheetやChartsがありますが、ひとまとめにしてSheetsでも指定できます。簡単に書けて良いと思うかもしれませんが注意点があります。
VBAでは、別のブック(エクセルファイル)のシートのセルを操作することができます。規模が大きなマクロを書くときに必須の知識です。
RangeやCellsの前にWorkbooksやWorksheetsを付けないときの挙動について学びます。
ワークシート関数(SumやAverageなど)で値を計算する場合、参照先の値が変わると、関数の結果も変わりますが、マクロの場合参照先が変わっても、計算結果は変わりません。
少しエクセルに慣れた方だとこの違いについて混乱することがありますので、詳しく解説しています。
使う頻度が高いプロパティをまとめています。その他、色の定数を題材にヘルプ画面を呼び出す方法も解説しています。
コーディングにおいて可読性(コードの読みやすさ)は非常に重要な要素です。Tabキーを使ってインデントする方法について学びます。
その他、Tabキーを使って、素早く入力補完候補を選択する方法を学びます。
コードをコピペして使い回せる場合は、いちいち手打ちするよりも素早くコードを記述できますし、間違いが少ないです。さらに、コードをコピペする場合はショートカットキーを使った方が圧倒的に素早くコピペできます。ここでは、ショートカットキーを使ってコピペする方法を学びます。
ご存知の方も多いと思いますが、Ctrlキー + Zキーで「元に戻す」ことができます。エクセルではCtrlキー + Yキーで「やり直す」事ができますが、VBEではそれが使えません。不便なので、VBEをカスタムしてショートカットキーで「やり直す」操作をする方法を学びます。
複数行をコメントアウトするにはVBE画面のコメントアウトボタンをクリックすればいいのですが、マウスを使うよりもショートカットキーでできたほうが圧倒的に高速です。
コードをたくさん書いていくと、あるコードを検索したり、置き換える必要が出てきます。ショートカットキーで検索置換を使う方法を学んでいきます。
おそらくAltキーなんて使ったことがない、という方がほとんどだと思いますが、ショートカットキーを使いこなせる方にとっては非常によく使うキーです。
このキーを使いこなせるようになると、エクセルやVBEのみならずWindows全般の操作が早くなります。
マウスでコードを選択しようとすると、なかなかうまくいきませんが、キーボードを使うと素早く正確に選択することができます。
業務ではたとえば、取引先名や担当者名に「様」をつけるなど、文字列を結合することがよくあります。これは「文字列の結合」によって実現します。どのようにやるかを学びましょう。
長い文字列を扱うとき、文字列が画面からはみ出してしまうことがあります。そんなときに折り返す方法を知っていると便利です。
文字列を改行して出力したいと思ったことはありますか? 改行方法を学べば、たとえば次のように出力できます。
「文字列を
改行して
出力したい」
セルやシートなどのオブジェクトを指定するときには文字列を使いますが、発想次第でさまざまな方法で指定できます。
「変数」はどんなプログラミング言語にもあり、基本中の基本です。しかし、プログラミング初心者には分かりにくい概念です。
変数とは何か? どんなメリットがあるのか? を学びましょう。
変数が内部でどう動いているのかを理解するのが変数理解の第一歩です。理解できればより高度なマクロを書けるようになります。
変数の使い方の全体像を説明します。
変数に値を格納する方法について詳しく解説します。
変数を利用する方法と、変数に名前をつける時の注意点を解説します。
変数の全体像についてわかったところで、もう一度変数のメリットをおさらいしておきましょう。
定数を知らなくてもプログラミングできますが、知っておくとなにかと便利です。この機会に覚えてしまいましょう。
定数は変数と違って、何でもかんでも入れられるわけではありません。いろいろ制限がありますが、その制限のおかげで様々なメリットを受けられます。
こんなお悩みや、思い当たるフシはありませんか? エクセルマクロ・VBAなら解決できます。エクセルマクロとはエクセルに備わっている自動化機能のことをいい、 VBAとは自動化機能をプログラムする言語をいいます。つまりVBAというプログラミング言語を使って業務を自動化して効率化できるということです。
コピペ作業や計算業務や分析業務など、手順の決まった仕事であれば、それが人力で3日かかる仕事であってもマクロで処理すれば数秒で終わります。さらに人間と違って入力ミスをしません。
手順が決まっていない仕事を自動化するのは、やや苦手なのですが逆に言うと、手順化のチャンスです。手順さえ決めてしまえば、自動化の対象になるからです。手順化スキルはエクセル以外にも広く応用できる能力です。VBAの学習、活用によってこうしたスキルを身につけることも可能です。
業務を効率化させるための手順にはさまざまな選択肢があると思いますが、エクセル業務に関してはマクロ・VBAが最適な選択肢です。
AIや機械学習が流行し、UdemyでもPythonなどの言語が人気です。たしかに、このような言語でもエクセル操作も可能ですし、さまざまな業務に活用できると思います。
しかし、「エクセル業務を効率化させる」という目的であれば、最適なプログラミング言語はVBAです。なぜならエクセル操作に最適化されているからです(当然ですが)。
最新の言語が「高級車・高機能な車」だとすると、VBAは軽自動車です。「高級車・高機能な車」なら遠出したり、荷物をたくさん運んだり、快適にドライブするにはいいでしょうが、近所のお店に買い物に行くにはあまり向いていません。しかし軽自動車なら手軽に近所に買い物に行ける。そんなイメージです。
軽自動車とはいえ、その威力は強力です。たとえて言うなら手作業は徒歩、エクセル関数を駆使した方法が自転車。ですから、どのくらい強力かなんとなくイメージできると思います。
私は大学卒業後数年間営業職についていたのですが、耐えきれずにドロップアウト。その後、ニートになり辛酸をなめました。運良く拾ってもらった会社で起死回生の手段としてマクロ・ VBAを身につけましたが、人生を変えるほど大きなインパクトがありました。
業務改善の成果や、VBAプログラミングから波及する様々なスキルに引っ張られて社内でも独占的な地位を得ることができました。さらにVBAプログラミングで業務改善の成果が見えるのはとても楽しいことで、毎日仕事を楽しむことが出来るようになりました。
ちょっと脱線してしまいましたがマクロ・ VBAによる業務改善効果は強力です。しかし、ただ闇雲に学習すればよいというわけではありません。学習に必要な順番や考え方、おさえるべきポイントなどがあると思います。このコースでは私がVBAを習得する過程で、最初にこんなことを知っておきたかったなぁ、こんな順番で学びたかったなぁ、という経験に基づいて内容を構成しました。
具体的には
などです。これらを学んで以下のようなことができるようになります。
このコースで学ぶ内容を自分のものにすることが出来れば、あなたが抱えている様々な業務にも応用可能なはずです。ピンときたら、このコースに申し込んでみてください。