Excel VBA | 超初心者(Excel操作+マクロ体験):VBA基礎環境 – ヘルプ参照

Excel VBA VBA
スポンサーリンク

VBAの「ヘルプ参照」は“公式の説明書”への入口

VBAのヘルプ参照は、
「この命令って正しくはどう使うんだっけ?」
「このプロパティの意味、ちゃんと知りたい」
というときに開く、“公式の説明書”への入口です。

ネット検索も便利ですが、VBAのヘルプは
そのバージョンのExcelに合わせた情報
オブジェクトやメソッドの正確な定義
サンプルコード付きの説明
がまとまっている、かなり頼れる情報源です。

「分からないときに、とりあえずヘルプを開く」という習慣がつくと、
独学のスピードが一気に上がります。


ヘルプの基本的な開き方

キーワードからヘルプを開く(F1)

VBE(Alt+F11)を開き、調べたいキーワードの上にカーソルを置きます。
たとえば、Range、MsgBox、Workbook などです。

その状態で F1 キーを押すと、そのキーワードに対応したヘルプが開きます。
これが一番よく使う「ヘルプ参照」の基本動作です。

ポイントは、「カーソルを置いてから F1」です。
何も選択していない状態で F1 を押すと、VBA全体のヘルプトップが出てしまうことがあります。

「分からない単語を見つけたら、とりあえずカーソルを置いて F1」
これを体で覚えてしまうのがおすすめです。

メニューからヘルプを開く

VBEのメニューからも開けます。
「ヘルプ」メニューをクリックすると、VBAのヘルプや、バージョンによってはオンラインヘルプへのリンクが出てきます。

ただ、実務的にはほとんどの場合、
「キーワードにカーソル → F1」で事足ります。


具体例1:Range のヘルプを見てみる

Range にカーソルを置いて F1

標準モジュールに、次のようなコードを書いてみます。

Sub Sample()

    Range("A1").Value = "テスト"

End Sub
VB

この Range の上にカーソルを置いて、F1 を押します。
すると、「Range オブジェクト」に関するヘルプが表示されます。

そこには、だいたい次のような情報が載っています。

Range オブジェクトの概要(何を表すか)
主なプロパティやメソッドの一覧
簡単な説明とサンプルコード

ここで重要なのは、「公式がどう説明しているか」を一度ちゃんと読むことです。
ネットの記事よりも、定義そのものに近い言葉で書かれています。

サンプルコードを読む・写経してみる

ヘルプには、たいていサンプルコードが載っています。
たとえば、Range のヘルプには、セル範囲を選択したり、値を設定したりする例が出ているはずです。

それをそのままコピーして、自分のVBEに貼り付けて実行してみる。
あるいは、見ながら手で打ち込んでみる(写経する)。

「ヘルプのサンプルを動かしてみる」というだけで、
単なる“説明文”が、一気に“体感した知識”に変わります。


具体例2:MsgBox のヘルプで引数を理解する

MsgBox にカーソルを置いて F1

次のようなコードを書いてみます。

Sub SampleMsg()

    MsgBox "こんにちは"

End Sub
VB

MsgBox の上にカーソルを置いて F1 を押すと、MsgBox 関数のヘルプが開きます。

そこには、次のような情報が載っています。

関数の書式(構文)
MsgBox(prompt, buttons, title, …) のような形
各引数の意味(prompt、buttons、title など)
戻り値(どのボタンが押されたかを表す値)

ここで特に大事なのは、「buttons 引数」と「戻り値」です。

buttons 引数の定数をヘルプで確認する

ヘルプの中には、buttons に指定できる定数の一覧が載っています。

vbOKOnly
vbOKCancel
vbYesNo
vbYesNoCancel
…など

これを見ながら、次のようなコードを書いてみます。

Sub SampleMsg2()

    Dim result As VbMsgBoxResult

    result = MsgBox("保存しますか?", vbYesNo + vbQuestion, "確認")

    If result = vbYes Then
        MsgBox "はいが押されました"
    Else
        MsgBox "いいえが押されました"
    End If

End Sub
VB

このとき、「vbYes」「vbNo」「vbQuestion」などの定数も、ヘルプに一覧があります。
「この定数は何を意味しているのか」「戻り値はどの型なのか」を、ヘルプで確認しながら書くと、理解が一段深くなります。

「なんとなくネットのサンプルをコピペ」ではなく、
「ヘルプの定義を見て、自分で意味を理解しながら書く」
ここが、上達スピードを分けるポイントです。


ヘルプで特に注目してほしいポイント

構文(Syntax)

ヘルプの最初の方に、「構文」または「書式」として、関数やメソッドの形が載っています。

たとえば MsgBox なら、

MsgBox(prompt, [buttons], [title], [helpfile], [context])

のような形です。

角括弧 [ ] が付いている引数は「省略可能」です。
つまり、必須なのは prompt だけで、他は必要に応じて書けばいい、ということが分かります。

この「どこまでが必須で、どこからがオプションか」を知るだけでも、
「とりあえず最小限で書いてみる」がやりやすくなります。

引数の説明と型

各引数には、説明と「型」が書かれています。

たとえば、prompt As String
buttons As VbMsgBoxStyle
のように。

これを見て、

prompt には文字列を渡す
buttons には VbMsgBoxStyle 型(実際には vbYesNo などの定数)を渡す

ということが分かります。

「この引数には何を渡せばいいのか分からない」とき、
ヘルプの引数一覧は、ほぼ必ずヒントをくれます。

戻り値(Return value)

関数や一部のメソッドには、「戻り値」があります。
ヘルプには、「戻り値」の型と意味が書かれています。

MsgBox の場合、戻り値は VbMsgBoxResult 型で、
vbOK、vbCancel、vbYes、vbNo などの定数で表される、と書かれています。

これを知っていると、

Dim result As VbMsgBoxResult
result = MsgBox(…)

という形で、戻り値をちゃんと受け取って分岐に使えるようになります。

「戻り値を意識する」ことは、Sub と Function の違いを理解することにもつながるので、
ヘルプで戻り値の欄は、ぜひ毎回チェックしてほしいポイントです。


ヘルプとオブジェクトブラウザの組み合わせ

オブジェクトブラウザからヘルプに飛ぶ

オブジェクトブラウザ(F2)でクラスやメンバーを選んだ状態で、F1 を押すと、
その項目に対応したヘルプが開きます。

たとえば、オブジェクトブラウザで Range クラスを選び、
メンバーから「Find」を選んで F1 を押すと、Range.Find メソッドのヘルプが開きます。

Find のヘルプには、引数がたくさん並んでいて最初は圧倒されますが、
構文・引数の説明・サンプルコードをゆっくり追っていくと、
「最低限こう書けば動く」というラインが見えてきます。

オブジェクトブラウザで「存在を知る」
ヘルプで「使い方を深掘りする」

この二段構えができると、VBAの世界が一気に広がります。


超初心者向け「ヘルプ参照」の使い方ルール

最後に、今の段階で意識しておくといい“ゆるいルール”をまとめます。

分からない単語(Range、MsgBox、Offset など)を見つけたら、まずカーソルを置いて F1 を押してみる。
ヘルプが開いたら、「構文」「引数の説明」「戻り値」の三つだけは必ず目を通す。
サンプルコードがあったら、一度は自分の環境で動かしてみる(コピペでも写経でもOK)。
ネット検索に行く前に、「公式ヘルプに答えが書いてないか?」を一度だけ確認してみる。

ヘルプは、最初は少し堅い日本語や英語が混ざっていて読みづらく感じるかもしれません。
でも、「全部理解しよう」としなくて大丈夫です。

毎回、「構文」「引数」「戻り値」だけでも拾っていくと、
少しずつ「VBAの言葉の使い方」が体に染み込んでいきます。

タイトルとURLをコピーしました