Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


45449 / 76732 ←次へ | 前へ→

【36276】Re:押されたボタン名の取得方法
回答  Kein  - 06/3/27(月) 13:53 -

引用なし
パスワード
   Sub test()に対応する、呼び出し側マクロのコードは

Sub test2()
  Dim x As Variant
 
  x = Application.Caller
  If VarType(x) <> 8 Then Exit Sub
  Select Case x
   Case "BUTTON1": 'BUTTON1 が押されたときの処理
   Case "BUTTON2": 'BUTTON2が押されたときの処理
   'Case ?: BUTTON?が押されたときの処理
  End Select
End Sub

というような感じになります。VarType関数の戻り値が 8 の場合は、マクロを
登録したオブジェクトの名前(即ち文字列)を返している、と判断します。
それ以外の例えば、エラー値(VarType = 10)などは「ツール」「マクロ」で
出てくるダイアログから選んで実行された場合ですから、判定したら即中止、
とします。それが定石です。

0 hits

【36274】押されたボタン名の取得方法 sin 06/3/27(月) 13:24 質問
【36276】Re:押されたボタン名の取得方法 Kein 06/3/27(月) 13:53 回答
【36289】Re:押されたボタン名の取得方法 sin 06/3/27(月) 16:15 お礼
【36277】Re:押されたボタン名の取得方法 つん 06/3/27(月) 13:54 回答
【36290】Re:押されたボタン名の取得方法 sin 06/3/27(月) 16:22 お礼

45449 / 76732 ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free