ExcelWork.info

Excel(エクセル)のマクロ・VBA・関数・操作などのメモ

VBAの変数宣言

   

VBAの変数宣言について

変数を暗黙的に宣言する

エクセル VBA の場合、明示的に変数宣言せずに変数を使用すると、バリアント型(Variant)として暗黙的に変数宣言されます。
ただし、バリアント型の変数は、他のデータ型で宣言した変数よりもメモリを多く使用します。また、変数名の競合によるエラーや入力ミスによるエラーを起こすことを防ぐため通常は、変数を明示的に宣言します。

強制的に、変数を明示的に宣言する(その1)

モジュールの宣言セクションに Option Explicit ステートメントを指定するとモジュール内のすべての変数の明示的な宣言が強制されます。

Option Explicit ステートメント

この時、宣言されていない変数名やスペルミスした変数名が検出されるとコンパイル時にエラーが発生します。

explicitステートメント エラーメッセージ

強制的に、変数を明示的に宣言する(その2)

VBE(Visual Basic Editor)の [ツール] の [オプション] からも設定可能で、ここで設定すると、すべての新規モジュールに対して、Option Explicit ステートメントを自動的に追加します。

【以下 設定方法】
  1. [ツール] から [オプション] を選んでクリックします。
    option explicit 01

  2. [オプション] ダイアログボックスが表示されるので、[編集] タブの [変数の宣言を強制する] のチェックボックスにチェックを入れて「OK」ボタンをクリックします。
    option explicit_02

  3. 新しく、標準モジュールを追加してみると
    option explicit_03

  4. 自動的に、モジュールの宣言セクションに Option Explicit ステートメントが追加されます。
    option explicit_04

 - VBA基本 , ,

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

  関連記事

Option Compare Text 例
Option Compare ステートメント

Option Compare ステートメントの使い方 【書式】 Option C …

TextToColumns メソッド
セルのデータを区切り文字で複数のセルに分割する(TextToColumns メソッド)

TextToColumns メソッド TextToColumns メソッドを使用 …

文字に下線を設定する(Underline プロパティ)

下線を設定(Underline プロパティ) Underline プロパティは、 …

現在の日付時刻を取得する
日付時刻:現在の日付・時刻を取得・設定(Now、Date、Time)

現在の日付・時刻を取得・設定 現在の日付・時刻を取得(Now 関数、Date 関 …

日付時刻:文字列から日付・時刻データを取得( DateValue 関数、TimeValue 関数 )

DateValue 関数(文字列から日付データを取得) 【書式】 date_va …

no image
VBA の演算子(算術演算子)

算術演算子 算術演算を行うときに使用する演算子です。 ^(べき乗)、*(積)、/ …

Choose 関数 例01
指定した数値に対応する選択肢の値・数式を返す(Choose 関数)

Choose 関数 の使い方 Choose 関数は、指定されたインデックス値(1 …

Spc 関数 01
指定した数のスペースを挿入する(Spc 関数)

指定した数のスペースを挿入 指定した数のスペースを挿入するには、Spc 関数を使 …

Volatile メソッド
ユーザー定義関数:自動再計算関数の設定(Volatile メソッド)

ユーザー定義関数で、自動再計算を行うかどうかを設定する ワークシート上で使用する …

no image
VBA の演算子(比較演算子)

比較演算子 比較演算子による演算の結果は「真」の場合は「True」、「偽」の場合 …