
No.2ベストアンサー
- 回答日時:
出来ますが 必要なプロパティの公開などが結構面倒ですよ
# コードの字下げには全角スペースを使用しています
ClassモジュールをMyButtonとして作成
Dim WithEvents objBtn as MSForms.CommnadButton
Public Event Click()
Private Sub Class_Initialize()
' クラスモジュールとシート上のコマンドボタンをつなぐ
Set objBtn = ActiveSheet.Shapes("CommandButton1").DrawingObject.Object
End Sub
Private Sub objBtn_Click()
' ボタンが押されたときに呼び出されるプロシージャ
RaiseEvent Click
' Clickイベントを呼び出してユーザーのBtn_Clickなどを呼び出す
End Sub
' Enabledプロパティの公開
Public Property Let Enabled(bValue As Boolean)
' 左辺の場合
objBtn.Enabled = bValue
End Property
Public Property Get Enabled() As Boolean
' 右辺の場合
Enabled = objBtn.Enabled
End Property
といった具合にします
シートモジュールなどで
Dim WithEvents MyBtn as myButton
Sub Init()
Set MyBtn = New myButton
myBtn.Enabled = True
End Sub
Sub MyBtn_Click()
MsgBox "Classモジュールからの呼び出し " & myBtn.Enabled
myBtn.Enabled = False
End Sub
といった具合です
No.1
- 回答日時:
リンク先にワークシート上に動的に配置したコントロールの配列の制御方法が回答されています。
予め配置したコントロールなら、ワークシートのActivateイベントなどにクラス生成を記述しても良いと思います。ご参考まで。
http://okwave.jp/qa4033874.html
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【Excel2016】結合されたセルを...
-
Perlのモジュールについて
-
グラフのX,Y座標を取得したい
-
Excel VBAでリンク切れをチェッ...
-
EXECEL VBA コマンドボタンか...
-
モジュールの最大数はいくつな...
-
VBのフォームモジュールと標準...
-
シャープ製品JH-WB1821 と BCG...
-
ユーザー定義関数に#NAME?が返...
-
クリアーとデリート
-
VBAのバージョン管理
-
エクセルVBAでシートモジュール...
-
Excel VBAで、ユーザーフォーム...
-
ユーザーフォームに最小化・最...
-
標準モジュールを削除したい。(...
-
Excel VBA 標準モジュール内で...
-
「デバイスは PRN を初期化でき...
-
例外処理のフローチャートの記...
-
VBScriptのデバッグ方法につい...
-
tex についての質問です このコ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excel VBAでリンク切れをチェッ...
-
Excel VBA 定義されたプロージ...
-
Application.OnKey:項目入力中...
-
Excel VBAで、ユーザーフォーム...
-
モジュールの最大数はいくつな...
-
グラフのX,Y座標を取得したい
-
VBA This Workbookモジュール...
-
ユーザー定義関数に#NAME?が返...
-
VBAで旧字体を異字体に一括で変...
-
モジュールとクラスの違いって...
-
Sub Workbook_Open()でユーザー...
-
acwzlibとは?
-
標準モジュールを削除したい。(...
-
エクセルVBAでシートモジュール...
-
VBでグローバル変数を宣言するには
-
【Excel VBA】標準モジュールに...
-
vba userFormのSubを標準モジュ...
-
【vba】フォームに書いてあ...
-
VBAで別モジュールへの変数の受...
-
マクロについて教えてください。
おすすめ情報