| |||||
ユーザー定義型変数と変数の範囲(スコープ)ユーザー定義型変数 複数の定義型をセットにして使いたい場合には「ユーザー定義型」を使います 例えば下記のようなシートをマクロで扱う場合に使えます それではマクロを書いてみましょう Option Explicit Sub sample1() このようにユーザー定義型は違う型をセットにすることもできますし、同じ型をセットにすることもできます ちなみにユーザー定義型はオブジェクトモジュール内では使えません 標準モジュールなどを使いましょう 変数の範囲(スコープ) 通常、プロシージャ内で定義される変数は、プロシージャ内でしか通用しません 例えば、全く同じ変数名であっても、違うプロシージャであれば、全く別のものです これはメリットであると同時に、用途によっては混乱を招くということと、一度定義した変数名でも、違うプロシージャでは使えないというデメリットがあります このような場合は、「モジュール変数」を使います モジュール変数は、モジュールシートの先頭の、プロシージャより上に書きます 左の赤枠はプロジェクトで、「Microsoft Excel Objects」がオブジェクトモジュール、選択されているところが「標準モジュール」です 実行してみましょう モジュール変数は、モジュール内でのみ有効です この場合、Dimで宣言してもPrivateで宣言しても結果は同じです Publicで宣言すると、プロジェクト内(赤枠内)の他のモジュールからも参照できます ちなみにこの変数の適用範囲の事を「スコープ」といいます モジュール変数ならば「変数のスコープがモジュール内である」と使います 定数 Const 「Const」は定数を宣言するときに使います 当然、定数ですからプロシージャ内では変更できません 尚、「Microsoft Excel Objects」モジュールでは何かと規制が多いので、汎用的に使うマクロは標準モジュールに書きましょう。osamushi オサムシじゃーなる
by 03musi
| 2013-02-11 16:39
| 試験メモ/VBAエキスパート
| |||||
ファン申請 |
||