さて、これまでにマクロ(VBA)とは何か、またマクロによってどのくらい仕事の効率が良くなるのかについて書いてきました。過去の内容はこちらからご覧ください。
今回はその続きとして、これまでに一度もExcel VBAを使ったことがない人がVBAを使い始めるための下準備を解説します。
Excel VBAを始める前準備
開発タブ
ExcelでVBAを使うには、まず開発タブを表示させる必要があります。
とサラッと流してしまうと、この時点でExcelに不慣れな方はギプアップしてしまうかもしれません。
ここでいうタブというのは、Excelのウィンドウ上部に“ファイル”とか”ホーム”とか”挿入”という名前で、Excelの様々な機能をカテゴライズしてある部分です。
その中で、Excel VBAを使うための”開発タブ”は、Excelの中でややマニアックな機能になるため、初期状態では非表示になっています。それを以下の手順で、表示させなくてはいけません。
- ファイル
- オプション
- リボンのユーザー設定
- メインタブの下の開発にチェックを入れる。
これで、タブの一番右端に、これまで存在しなかった”開発”が追加されているはずです。
VBE
新しく追加された開発タブの一番左に”VBE”があります。これを使ってマクロを作成します。
まずは、VBEをクリックしてみましょう。
VBEとはVisual Basic Editorの略です。以前紹介した通り、Excelでマクロを動かすためのプログラミング言語の名前がVBA(Visual Basic for Applications)です。
VBEは名前の通り、VBAのためのEditorです。下記がVBEの画面ですが、大きな赤丸のある広いスペースの部分に、実際のプログラムを書いていく、というイメージです。
もう少し細かく話しましょう。
上の画面が出てきたら、VBA Project (PERSONAL.XLSB)を選択し、画面上の”挿入”メニューから”標準モジュール”を選択してください。
そうすると、画面の左の方に、”標準モジュール”が追加されます。
あとはModule1をダブルクリックして、右側の広い空間に、コードを書いていきます。
Moduleを増やしたい時は、”標準モジュール”を右クリックして、”挿入”->”標準モジュール”を選択することで、Module2, Module3…と増えていきます。
標準モジュールとは?
さて、上の説明では飛ばしましたが、”そもそも標準モジュールってなんだ?”と思っている人も多いと思います。
標準モジュールというのは、イメージとしては”共通部品“だと理解してください。今開いているBookやSheetと関係なく、共通部品としてコードを書き、保存し、使う時は今アクティブになっているシートでマクロが動く。そういうものです。
ですので、標準モジュール以外(例えば今開いているファイルが”Book1″なら、Book1のモジュール)に保存してしまうと、そのファイルを使用している時にしか使えない、汎用性の低いマクロになってしまいます。初心者の方は、”とりあえず標準モジュール”と覚えておきましょう。
PERSONAL.XLSBが見つからない時
上で出てきた”VBA Project (PERSONAL.XLSB)“が見当たらない!というケースがあります。そういう時は、どんな内容でもいいので、マクロの記録を使って見てください。一度マクロの記録をすることでPERSONAL.XLSBが出現することがほとんどです。マクロの記録については以下で説明します。
マクロの記録
さて、マクロを実際に使って見ましょう。。。とはいっても、使い始めは何が何やらサッパリで、コードをいきなり書くことはできないと思います。
そこでまずは、コードを書けなくても使える”マクロの記録”から使ってみましょう。
マクロの記録を実行する
開発タブの”マクロの記録”を押すと、以下のようにウィンドウが出てきます。適当名前を付けたらOKを押してください。この時、保存先は”個人用マクロ ブック”になっていることを確認してください。
さて、OKを押したら、その後のあなたの作業をExcelが自動的に追跡し、マクロのコードを自動で作成してくれます。終わったら、マクロの記録終了を押してください。今回は、A2セルに”バナナ”と打ち込み、その文字を太字にして、背景を黄色にしました。
記録されたマクロを見てみる
マクロの記録が終わったら、再度VBEを開き、標準モジュールにマクロが記録されているのを確認します。
英語の羅列で、初めは訳が分からないと思いますが、慣れていけば、1行ずつ意味が分かるようになります。ざっくりイメージを持ってもらうために、以下では”こんな意味だよ”というのを説明します。
Sub マクロテスト():”マクロテスト”というマクロについて記述する
‘ マクロテスト Macro:'(クォーテーションマーク)から始まる文字列は緑になり、VBAのコードではないと認識されます。
Range(“A2”).Select : セルA2を選択する
ActiveCell.FormulaR1C1 = “バナナ”:選択しているセルに”バナナ”という値を入力する
Selection.Font.Bold :選択しているセルのデータのフォントを太字にする
With Selection.Interior:選択しているセルの内部について以下の通り設定する
.Pattern = xlSolid:網掛け無し
.PatternColorIndex = Automatic:網掛けの色の設定=自動
.Color = 65535:セルの色を黄色に
.TintAndShade = 0:色の明暗の調整は無し
.PatternTintAndShade = 0:網掛けの色の明暗の調整は無し
いかがでしょう?意外と、なんとなく理解できませんか?最終的には上のようなVBAのコードを自分で記述できるようになることで、マクロを自由に作成することができるようになります。
コメント