• 締切済み

activeXのフォームにマクロ登録する方法

マクロ超初心者です。 ある図形を「Red」というマクロ(マクロの記録から作成したもの)を実行すると 枠が赤色になるマクロを作成したとします。 一方でActiveXのフォームからRedというチェックボックスを作成し、 チェックボックスをON(True)にすると「Redのマクロが実行」されるように設定したのですが、どのようにすればよろしいでしょうか。

みんなの回答

回答No.2

ActiveXのフォームというのが何を意味するのかわかりませんが・・・ Redという名前のマクロがあるのだから、Redというチェックボックスは使えません。 下記例ではチェックボックスを「RedCheckBox」としています。 マクロを「ChangeBorderRed」としています。 '--- ユーザーフォーム内 Private Sub RedCheckBox_Click() If RedCheckBox.Value = True Then Call ChangeBorderRed End If End Sub '--- 標準モジュール内 Public Sub ChangeBorderRed() 'ここに枠を赤にするロジック End Sub

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.1

>ActiveXのフォームから、質問に書いているが エクセルVBAなら フォームにActveXとその他は無いのではないか。 ーー 「コントロール」では ・フォームコントロール と ・ActiveX コントロール の2種があるのは、有名なエクセルVBAのトッピクスだが。 そもそもエクセルVBAの質問だということを質問には明記すべきなんだ。 それにエクセルバージョンの書くべきだ。回答が変わる場合もありえるのだ。 http://www.239-programing.com/excel-vba/basic/basic101.html など ーー 基本的にはイベントの(エクセルVBAの例) Private Sub ComboBox4_Change() End Sub などの中にRedのルーチンを挟めばよいのでは。 ただ処理するObjectについては注意しないとならないが。 エクセルのシートのセルとワードの表のセルが同じコードになるとは限らないはず。 ーー >ある図形を「Red」というマクロ(マクロの記録から作成したもの)を実行すると 枠が赤色になるマクロを作成したとします この文章は、「「Red」というマクロを実行すると、図形の枠を赤色になる,コード」と書くべきと思う。 それを「チェクボックス」をクリックしたとき実行したときに実行にしたいなら 上記の通り。イベントが何か(クリックとかChangeとか)認識しないとだめ。 「チェックボックスをON(True)にする」というのは、イベントそのものではない

関連するQ&A

専門家に質問してみよう