エクセルでマクロやVBAが使えたら、仕事が楽になるのになぁ~と
思われている方は、かなり多いと思います。
そう、コピペや関数では時間の短縮に限界があるのです。
筆者は書類作成をしていた時期が有、書類のルーチンワークを効率化したくて
マクロ・VBA を勉強しました。
時代とは言え、たかがエクセル・アクセス・VBAだけで、
世界的に有名な外資系企業の末端で資料なんか作ってたりしました。
派遣でしたが、時給良かったですよ。
プログラミング学習 エクセルVBA入門
エクセルが出た当初、市販されている本もほとんど無く、ヘルプを見ながら我流でプログラムを組んだことが、今になって思えば実力が伸びた要因だと思えます。
それは、具体的に自分が何を作りたいか?
具体的にどうしたいのか?
ビジョンが見えていたので、あとはゴールに向かってフラフラしながらも、たどり着けたのだと思います。
あとは、ゴールに向けて道筋を考えれば良いのです。(フロチャート)
そうは言っても、基本的な事を知らなければ、スタート地点から動けません。
エクセルVBA の 準備
標準では、エクセルVBAとエクセルマクロが使用できない状態です。
⇓使えるようにするには次の操作をすることで使用できるようになります。⇓
開発タブを表示させるには |
- 「ファイル」タブ-「オプション」をクリック
- 「リボンのユーザー設定」をクリック
- 画面右の「リボンのユーザー設定」配下に表示されるタブ一覧で「開発」にチェックを入れる
VBA エクスプローラの簡単な 説明
ここでは開発画面(実際にVBAを記入して、プログラムを実行する部分)の説明をします。
⇓下の図のプロジェクト VBAProjyectで選択された場所が
右の一番大きな場所に表示されている。ここでは 標準モジュールのメイン。
⇑プロジェクトの下のプロパティ VBAProjyectで選択された場所の各詳細である。
その横のイミティエイトは 計算結果を表示したり、
部分的にプログラムを動かしたりするのに使用する。
Private と Public
先程のエクスプローラのプロジェクトに、
Sheet1~3 …………Privateモジュールを書くところ
This Workbook………Publicモジュールを書くところ
標準モジュール………Publicモジュールを書くところ
におおよそ分けられます。
ここで Private と Public の違いを簡単に説明すると。
Private……その場所でしか使用出来ないプログラム
Public……全ての場所で使用可能なプログラム
This workbook に記入したプログラムは全てのSheetで使用可能。
※2つのエクセルファイルを開いた場合、標準モジュールはどちらのエクセルファイルでも使用可能だが、This workbookは含まれるエクセルファイルでしか使えない。
プログラム数が増えた場合の事を考えて、This Workbookにはプログラムは書かないようにしたほうが良い。
何故なら、標準モジュールは後からいくらでも追加出来るので、用途ごとに分類しやすい。
※標準モジュールフォルダで挿入を選べば追加できます。
Privateモジュールを使用する時
Private と Public の違いが分かれば、Privateっていらなくね?となりそうだが、
とんでもない、使用頻度大です。
例えば マウスをダブルクリックした時や、シートが選択された時など、
一定のアクションに対してプログラムが書けるのです。
実行プログラムはPublicモジュールで
Privateモジュールでそれを呼び出して実行する。
これが黄金律です。
Private(Public) Sub(Function) で始まり End sub(End Function) で終わる
一つのプログラムには必ず始まりと終わりがあります。
それが
Private(Public) Sub(Function) で始まり
この間にプログラムを書いていきます。
End sub(End Function) で終わります。
Subは単体で動くけど Functionは他のプログラムに計算結果など値を渡す。
日本ブログ村ランキングに登録しています この記事がよかったらクリックで応援お願いします。