ExcelWork.info

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

プロシージャを呼び出す(Call ステートメント)

   

プロシージャを呼び出す

プロシージャ内から、別のプロシージャを呼び出すには、Call ステートメント を使用します。参照設定を行うことで、別ブック内のプロシージャを呼び出すことも可能です。( ※ 参照設定を行わずに、別ブックのプロシージャを呼び出すには、Run メソッド を使用します。詳細は、別のブックのマクロを実行(Run メソッド) を参照してください。)


【構文】

Call name ( argumentlist )


引数・戻り値

  • name  ・・・  呼び出すプロシージャの名前を指定します(必須)。
  • argumentlist  ・・・  プロシージャに引き渡す変数リスト、配列、または式のいずれかを指定します。複数指定するときは、カンマ(,)で区切ります。

キーワード Call は、省略可能です。この時、引数 argumentlist を囲む括弧も省略する必要があります。
また、組み込み関数、ユーザー定義型関数を呼び出す場合、その関数の戻り値を取得することはできません。

別ブックのプロシージャを呼び出す には、参照設定を行う必要があります。

呼び出すブックを参照設定する方法
  1. VBE を起動して、プロジェクトエクスプローラで、参照するブックを選択します。右クリックまたは、[ツール] から [VBAProject のプロパティ] をクリックします。
    参照設定01
  2. 「プロジェクト名」を入力して、[OK] ボタンをクリックします。
    参照設定02
  3. [ツール] から [参照設定] をクリックし、[参照設定 -VBAProject] ダイアログボックスを表示します。② の「プロジェクト名」のチェックボックスにチェックを入れて、[OK] ボタンをクリックします。
    参照設定03
参照設定を解除

VBE を起動、[ツール] から [参照設定] をクリックし、[参照設定 -VBAProject] ダイアログボックスを表示します。解除したい「プロジェクト名」のチェックボックスのチェックをはずして [OK] ボタンをクリックします。
参照設定11



Call ステートメント 使用例

サンプルVBAソース


実行結果

Call ステートメント



 - 構文 , , ,

Message

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

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

  関連記事

変数やプロシージャのスコープ(適用範囲)

変数やプロシージャのスコープ(適用範囲) 【構文:変数の宣言】 { Dim | …

for_next ステートメント例
繰り返し処理(For…Next ステートメント)

For…Next ステートメントの使い方 【構文】 For coun …

With ステートメントを使う

With ステートメントを使う With ステートメントを使うことで、1度指定し …

引数の参照渡し・値渡し( ByRef, ByVal )

引数の「参照渡し」と「値渡し」 「参照渡し」とはプロシージャに引数として変数を渡 …

On Error ステートメント(例)その1
エラー処理(On Error ステートメント / Errオブジェクト)

On Error ステートメントの使い方 【構文 1】 On Error GoT …

省略可能な引数・デフォルト値を設定( Optional キーワード )

Optional キーワード Optional キーワードを使用するとプロシージ …

配列が引数のプロシージャ 例1
配列が引数のプロシージャを作成する

配列が引数のプロシージャを作成する 【構文】 { Sub | Function …

for each next ステートメント例
繰り返し処理(For Each…Next ステートメント)

For Each…Next ステートメントの使い方 【構文】 For …

引数を可変にする( ParamArray )

ParamArray キーワード ParamArray キーワードを使用すると任 …

ユーザー定義型変数を使う(Type ステートメント)

Type ステートメントを使う Type ステートメントを使うと1つまたは複数の …