No.3ベストアンサー
- 回答日時:
こんばんは
ご質問文の通りに「監視」するのであれば、
・OnTime等で一定時間ごとにチェックする
あるいは、ボタンの変化がクリックで起こるとしてよいのなら
・マウスクリックを取得して、チェック(監視)する
ような方法が考えられます。
https://excel-excel.com/tips/vba_151.html
とは言え、いずれにしろ無駄に実行される確率が高いので、効率も悪く、下手なコードを書けば負荷の増大につながりかねません。
補足に、
>ボタンごとにマクロを割り付けるのではなく、
とありますが、ボタンのクリックをひとつのマクロで処理することは可能ですし、この方法であれば、必要な時にしか動作しないので効率が悪くなることもありません。
以下は、そのような一例です。
フォームコントロールのオプションボタンの場合を例として。
(ActiveXの場合は、扱いが変わる可能性があります)
1)例えば、標準モジュールに以下のコードを用意しておきます。
Sub optBtnCheck()
Set c = ActiveSheet.Shapes(Application.Caller)
MsgBox c.Name & "(" & c.AlternativeText & ") is ON"
End Sub
2)シート上にフォームコントロールのオプションボタンを作成
3)2)のボタンに1)のマクロを登録
4)3)のボタンをコピペで好きなだけ増やします。
以上で、ボタンをクリックすれば(=ONになるのと同値)、そのボタン名がメッセージボックスに表示されます。
(実際の処理内容は、なさりたいことに応じて書き換える必要があります)
※ すでにボタンを多数作成済みであれば、「マクロを登録する」マクロを作成して実行すれば、後からの登録も可能です。
※ 上記のままだと、「ONになっているボタン」をクリックしても動作しますが、状態が変化したかどうかは、単純にこれだけをチェックすれば済むものと思います。
※ ボタンのグループが複数存在する場合であっても、チェックタイミングの取得は同様にできるものと思います。
ありがとうございます。
勉強になりました。
ActiveXコントロールのオプションボタンだったので、
一括でマクロ登録出来なかったという事情もあり、
セル変化を検知できて、オプションボタンを検知できないのかという興味もありまして。
扱いやすいフォームコントロールのオプションボタンに置き換えて正攻法でいこうと思います。
No.2
- 回答日時:
単純にこう言うことじゃなくて?
Private Sub OptionButton1_Click()
MsgBox "op1"
End Sub
Private Sub OptionButton2_Click()
MsgBox "op2"
End Sub
ありがとうございます。
ボタンごとにマクロを割り付けるのではなく、
Worksheet.Changeイベントが、シート上のセル書き換えを監視して、マクロ処理を走らせるように、
シート上よオプションボタンの変更を検知してマクロ処理を走らせる、
みたいな方法を探していました。
単純に全オプションボタンに同じマクロ割り当てれば実現はできますが、
「オプションボタンの変更」をきっかけにできるか、
という点での質問でした。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) 【Excel VBA】マクロボタンを表のスクロールやフィルタに左右されず固定できないですか? 7 2021/11/21 19:16
- Excel(エクセル) [貼り付けオプション]とは? 3 2022/04/17 08:15
- Excel(エクセル) 「Excelのオプション」の「ユーザーインターフェイスのオプション」の設定値をVBAで取得したい 1 2022/07/31 23:49
- Visual Basic(VBA) ExcelのVBAを使い、複数シートの同一箇所を、同一条件にて一括でソルバーを回す方法について 1 2022/04/23 11:49
- Excel(エクセル) 納品書台帳の納品書番号(一連番号)が入力シートからのデータ転記で反映(表示)されるようにしたい。 1 2021/11/17 19:49
- その他(データベース) Accessフォームからパラメーターで表示したレコードを指定のExcelのセルへ転送する方法について 2 2022/08/22 18:04
- マウス・キーボード エクセルに関する三つの質問 2 2021/12/05 12:35
- Visual Basic(VBA) Excel ファイルを指定し、指定されたファイル内にシートを統合するVBA 8 2023/07/10 10:09
- Excel(エクセル) EXCEL ActiveX コマンドボタンで実行する前にいったんmsgBoxで確認を求めたい 1 2022/07/06 19:41
- Visual Basic(VBA) MS-OUTLOOK VBA 投票ボタン 1 2021/10/29 22:39
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
エクセルVBAでOptionButtonのオンオフ取得
Excel(エクセル)
-
エクセルVBAでオプションボタンを無効にする方法
Excel(エクセル)
-
エクセルVBA オプションボタンのチェックを外したい
Excel(エクセル)
-
-
4
VBAでエクセルシートを更新(リフレッシュ)する方法を教えて下さい。
Excel(エクセル)
-
5
特定のシートの削除を禁止したい(ブックの保護でなく)
Excel(エクセル)
-
6
オプションボタンを別シートに連動
Excel(エクセル)
-
7
入力されたかどうか、オプションボタンが選択されたかどうかをチェックしたい
Visual Basic(VBA)
-
8
Excelマクロでオプションボタンの名前の変更をしたい
Excel(エクセル)
-
9
VBAでオプションボタンなどそれぞれの数を調べたい
Excel(エクセル)
-
10
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
-
11
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
12
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
13
マウスで選択した図形のみVBAで移動したい。
Visual Basic(VBA)
-
14
Changeイベントでの複数セルのクリアの処理について
Visual Basic(VBA)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
学校で買ったiPadがあるんです...
-
会社のパソコンの監視のされ方...
-
北陸割第2弾をやっていて、「便...
-
社員のPCを監視したい
-
インターネットは常に監視され...
-
CCNA
-
パソコンを監視されているのを...
-
スニフィングについて
-
海外に行く時自分のスマホをvpn...
-
ネオジャパンの i officeにつ...
-
自動で幅を測る
-
有線を使うと親機に知られてし...
-
Excelシート上のオプションボタ...
-
ラップ音が、自分の思考や行動...
-
エクセルでファイル更新はどう...
-
パソコン、スマホが遠隔監視さ...
-
富士通製SystemwalkerCentricMa...
-
サーバー監視業務 未経験でも差...
-
オペアンプとトランジスタを使...
-
100W機なのにSSBの出力...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
学校で買ったiPadがあるんです...
-
ネット上ではなく私のパソコン...
-
アプリについて
-
パソコンを監視されているのを...
-
会社のパソコンの監視のされ方...
-
頭の監視
-
人間が嫌いな人って、四六時中...
-
インターネットは常に監視され...
-
バイト前眠れないです。 大学生...
-
誰かに監視されてる気がします ...
-
学校支給のiPadはどこまで監視...
-
他人のPCに一切触れずにそのPC...
-
OVO(OpenViewOp...
-
OpManagerでのトラフィック監視...
-
PC の有料ソフトについて、購入...
-
26歳女です。職場で目をつけら...
-
ATMはどうせ無人なのに土日や夜...
-
ラップ音が、自分の思考や行動...
-
教えてgooの投稿を監視削除して...
-
大至急‼️学校のiPadについて
おすすめ情報