- ベストアンサー
エクセル2010のvbaとコマンドボタンについて
vbaで押されたコマンドボタンの (ActiveXコントロールのイメージやラベルなど) 名前を取得することはできますか? ActiveControl.NameはSheets(1)をつけると オブジェクトは、このプロパティまたはメゾットをサポートしていません とエラーが出て、Sheets(1).を取るとオブジェクトが必要です とエラーが出て上手くいきません フォームコントロールのボタンは右クリックできないので ActiveXコントロールのコマンドボタンを使用しています 回答お願いします
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こちらにありました。結構大げさな事をしないと取得できないのですね。2010でも動きました。 おかげさまで一つ物知りになりました。 http://www.moug.net/tech/exvba/0150059.html コードの最後は Me.OLEObjects(obj.Name).Object.Caption = "変更後のキャプション" の方が当方の好みです。
その他の回答 (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
質問者
補足
すいません 押されたボタン以外の名前も表示されてしまいます
お礼
ありがとうございました いくら探しても見つからなかったので 本当に助かりました