CALL 関数

重要: 慎重  レジストリを誤って編集すると、オペレーティング システムに重大な障害が発生し、再インストールを要求される場合があります。 Microsoft では、このようなレジストリの誤った編集による問題については保証していません。 レジストリを編集する前に、重要なデータをバックアップしてください。 レジストリの使用および保護の詳細については、Microsoft Windows ヘルプを参照してください。

ここでは、Microsoft Excel の CALL 関数の書式および使用法について説明します。

注:  CALL 関数は Web 用 Excelでは使用できません。

説明

ダイナミックリンクライブラリまたはコードリソースで、プロシージャを呼び出します。 この関数には2つの構文形式があります。 構文1は、以前に登録されたコードリソースに対してのみ使用します。これには REGISTER 関数の引数が使用されます。 コードリソースの登録と呼び出しを同時に行うには、構文2a または2b を使用します。

重要: この関数は詳しい知識のあるユーザー向けです。 CALL 関数を不用意に使用すると、コンピューターの再起動を伴うエラーが発生することがあります。 この関数は、Excel マクロ シートでのみ利用できます。

書式

書式 1

REGISTER 関数と共に使用

CALL(レジスタ番号,[引数 1],...)

書式 2

単独使用 (Windows 版 Microsoft Excel)

レジスタ番号     CALL 関数の前に実行した REGISTER 関数または REGISTER.ID 関数の戻り値を指定します。

CALL(モジュール名,プロシージャ名,データ型,[引数 1],...)

CALL 関数の書式には、次の引数があります。

  • モジュール名     必ず指定します。 Microsoft Excel で、目的のプロシージャを含む DLL の名前を、半角の二重引用符 (") で囲んだ文字列として指定します。

  • プロシージャ名     必ず指定します。 Windows 版 Microsoft Excel で、DLL 内の関数の名前を半角の二重引用符 (") で囲んだ文字列として指定します。 名前の代わりにモジュール定義関数ファイル (拡張子は .DEF) 内の EXPORTS ステートメントに記述されている関数の番号を指定することもできます。 関数の番号は数値として指定するため、半角の二重引用符は必要ありません。

  • データ型     必ず指定します。 戻り値のデータ型、および DLL やコード リソースに引き渡す、すべての引数のデータ型を半角の二重引用符 (") で囲んだ文字列として指定します。 データ型の先頭文字は戻り値のデータ型を指定します。 データ型として使用するコードの詳細については、ヘルプの「CALL 関数と REGISTER 関数の使い方」を参照してください。 独立型の DLL またはコード リソース (XLL) の場合、この引数は省略できます。

  • 引数 1,...     省略可能です。 プロシージャに渡される引数を指定します。

使用例

次のマクロ数式は、32 ビット Microsoft Windows の GetTickCount 関数 (プロシージャ) をメモリに登録します。 GetTickCount 関数は、Windows が起動してから経過した時間をミリ秒単位で返します。

REGISTER("Kernel32","GetTickCount","J")

REGISTER 関数がセル A5 に入力されているとすると、REGISTER 関数の実行後に、次のような CALL 関数を使って、Windows が起動してからの経過時間をミリ秒単位で計算できます。

CALL(A5)

注:  このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。 私たちの目的は、このコンテンツがお客様の役に立つようにすることです。 情報が役に立ったかどうか、ご意見をお寄せください。 参考までに、こちらから英語の記事をお読みいただけます。

Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×