Home » エクセルマクロ・Excel VBAの使い方 » Shapesコレクション・Shapeオブジェクト » Application.Callerの戻り値は?-図形にマクロの登録を行った場合

Application.Callerの戻り値は?-図形にマクロの登録を行った場合

動作検証バージョン:64bit Windows 10 Pro + 32bit Excel(バージョン2109 ビルド14430.20306 Microsoft Store)

[マクロの登録]ダイアログボックス

Excel VBAのApplication.Callerプロパティの戻り値は、ユーザー定義関数の場合はRangeオブジェクトであることを記事にしました。

他の型の場合もご紹介しておきましょう。図形にマクロ登録した場合です。

[スポンサードリンク]

Application.Callerを確認するサンプルマクロ

今回は、以下のようなSubプロシージャを作成してください。

Sub Callerを確認する_図形にマクロ登録した場合()
 Dim tmp As Variant
 tmp = Application.Caller
 MsgBox TypeName(tmp)
 MsgBox tmp
End Sub

Application.Callerの確認手順

上記のSubプロシージャができたら、シート上に何らかの図形を挿入し、図形を右クリックして表示されるショートカットメニューから[マクロの登録]を実行して、クリックすることで「Callerを確認する_図形にマクロ登録した場合」マクロを実行できるようにします。

マクロの登録が完了して、図形をクリックすると「Callerを確認する_図形にマクロ登録した場合」マクロが実行され、メッセージボックスが2回表示されます。

1つ目のメッセージボックスにはApplication.Callerプロパティの戻り値の型「String」が表示され、

tmp = Application.Caller
MsgBox TypeName(tmp)

2つ目には「楕円 1」「正方形/長方形 2」などと表示されます。

tmp = Application.Caller
(途中省略)
MsgBox tmp

図形にマクロ登録した場合Application.Callerの戻り値は図形の名前

上記のSubプロシージャを図形にマクロ登録した場合、1つ目に表示されるメッセージボックスは必ず「String」ですが、2つ目はマクロ登録した図形により異なります。

ここで表示される「楕円 1」「正方形/長方形 2」は、下図のようなExcel上で確認できる図形の名前です。

Excelの作業ウィンドウ

最終更新日時:2021-11-04 12:28

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » Shapesコレクション・Shapeオブジェクト » Application.Callerの戻り値は?-図形にマクロの登録を行った場合

「Shapesコレクション・Shapeオブジェクト」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.