• ベストアンサー

エクセル2010のvbaとコマンドボタンについて

vbaで押されたコマンドボタンの (ActiveXコントロールのイメージやラベルなど) 名前を取得することはできますか? ActiveControl.NameはSheets(1)をつけると オブジェクトは、このプロパティまたはメゾットをサポートしていません とエラーが出て、Sheets(1).を取るとオブジェクトが必要です とエラーが出て上手くいきません フォームコントロールのボタンは右クリックできないので ActiveXコントロールのコマンドボタンを使用しています 回答お願いします

質問者が選んだベストアンサー

  • ベストアンサー
  • mitarashi
  • ベストアンサー率59% (574/965)
回答No.2

こちらにありました。結構大げさな事をしないと取得できないのですね。2010でも動きました。 おかげさまで一つ物知りになりました。 http://www.moug.net/tech/exvba/0150059.html コードの最後は Me.OLEObjects(obj.Name).Object.Caption = "変更後のキャプション" の方が当方の好みです。

atamanotaisou1
質問者

お礼

ありがとうございました いくら探しても見つからなかったので 本当に助かりました

その他の回答 (1)

  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

名前をダイアログで表示する例です。 Sub macro() Dim C As OLEObject For Each C In ActiveSheet.OLEObjects MsgBox C.Name Next C End Sub

atamanotaisou1
質問者

補足

すいません 押されたボタン以外の名前も表示されてしまいます

関連するQ&A