
No.3
- 回答日時:
>セルA1が変わるとイベントマクロが発生しますが
>セルB1が変わると別のマクロが発生し
>セルC1が変わるとまた別のマクロが発生し
同じ1つのChngeイベントで受けて
Private Sub Worksheet_Change(ByVal Target As Range)
Select Case Target.Address
Case "$A$1"
MsgBox "A処理実行"
Case "$B$1"
MsgBox "B処理実行"
Case "$C$1"
MsgBox "C処理実行 "
End Select
End Sub
のようにセルのアドレスで区別すればよいのでは。
InterceptやCase文を使わず、
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$1" Then
MsgBox "A処理実行"
ElseIf Target.Address = "$B$1" Then
MsgBox "B処理実行 "
Else
MsgBox "C処理実行 "
End If
End Sub
でもできる。(コード表現だけの問題だが)
それでは困るケースがありますか。
No.2
- 回答日時:
例えば、こんな感じで如何ですか。
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
MsgBox "セル A1 が変更になりました。" ' <--- A1変更時の処理
End If
If Not Intersect(Target, Range("B1")) Is Nothing Then
MsgBox "セル B1 が変更になりました。" ' <--- B1変更時の処理
End If
If Not Intersect(Target, Range("C1")) Is Nothing Then
MsgBox "セル C1 が変更になりました。" ' <--- C1変更時の処理
End If
End Sub
> Select Case Target.Address
> Case "$A$1"
> A1のマクロ文
これ↑では、複数セル同時変更したとき、その中に該当セルがあっても機能しないと思いますが・・・
これでも良い仕様であれば別ですが・・・
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- excel2021で実行できないマクロ。どこを直したらいいのか
- エクセルの自動更新のタイミングについて
- エクセルのVBAでダブルクリックでチェックを入れたあと
- エクセルのイベントプロシージャーでF列の最終行のセルの入力をトリガーにしたいのですが
- 【Excel VBA】自動メール送信の機能追加
- エクセルVBAでオブジェクトが必要です
- 【追加】ファイルを閉じてダイアログで保存した時だけ処理の実行をする
- 【変更】ファイルを閉じてダイアログで保存した時、更新したシートだけの処理の実行をする
- Excel2019 マクロを使用し画像を貼り付けした際のリンク切れについて
- 【VBA】写真の貼り付けコードがうまく機能しません。
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
複数処理 Worksheet_Change(ByVal Target As Range)
Visual Basic(VBA)
-
Changeイベントでの複数セルのクリアの処理について
Visual Basic(VBA)
-
エクセルマクロPrivate Subを複数にする方法
Excel(エクセル)
-
-
4
Excel VBAでのWorksheet_Changeが動作しない原因
Excel(エクセル)
-
5
Private Sub Worksheet_Change が複数
Excel(エクセル)
-
6
エクセルvba (ByVal Target As Range)について
Excel(エクセル)
-
7
エクセルVBA シートモジュールにチェンジイベントを複数設定する方法を教えて下さい。 例えば、B列に
Visual Basic(VBA)
-
8
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
9
EXCEL あるセルに数字が入力されれば既存マクロ実行させたい
Excel(エクセル)
-
10
Worksheet_Change(ByVal Target As Range)の下に複数範囲
Excel(エクセル)
-
11
VBA:結合されたセルに対する「Target」について
Access(アクセス)
-
12
ExcelVBAを使って、値がある場合は作業を繰り返し実行するプログラムを作成したい。
Visual Basic(VBA)
-
13
別のシートから値を取得するとき
Visual Basic(VBA)
-
14
【EXCEL】【VBA】空欄は飛ばして処理する方法を教えて下さい。
Excel(エクセル)
-
15
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
16
EXCEL VBA 複数のシートに同じイベントプロシジャを書く場合
Excel(エクセル)
-
17
他のシートの特定のセルが変わると、自動実行されるマクロについて
Excel(エクセル)
-
18
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
19
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
20
worksheet_changeがループする
PowerPoint(パワーポイント)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
accessのフォームに設置したボ...
-
AccessのDBを理解するコツは?
-
Access レポート印刷するときに...
-
Access VBA を利用して、フォル...
-
Accessで作ったデータベースをw...
-
Accessで独自メニューバーまた...
-
既定のビューを分割フォームに...
-
Microsoft Accessをクレジット...
-
Accessのリンクテーブルのパス...
-
Accessでセレクタをダブルクリ...
-
アクセスで、androidのスマホサ...
-
【至急・画像あり】建物or住所...
-
Accessのテキストボックスの入...
-
Vba Userformを前面に出すについて
-
VBAによるピボットテーブルの更新
-
アクセスで作成したマクロの印...
-
Accessのデータ型の日付/時刻型...
-
エクセルのマクロについて教え...
-
AccessVBAで任意の複数リンクテ...
-
アクセスのレコードをフォーム...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access レポート印刷するときに...
-
Accessのクエリで、replace関数...
-
Vba Userformを前面に出すについて
-
Access2016で日本語の曖昧検索...
-
実行時エラー3131 FROM 句の構...
-
Access VBA を利用して、フォル...
-
Accessのスプレッドシートエク...
-
【Access】Dcount関数の複数条...
-
Microsoft365にAccessってあり...
-
Accessのリンクテーブルのパス...
-
CSVファイルの「0落ち」にVBA
-
Accessレポートのチェックボッ...
-
VBA Excelファイルの保存先を変...
-
クイックアクセスにピン止めで...
-
VBAで変数内に保持された二次配...
-
Access で半角スペースと全角ス...
-
access2019 チェックボックスと...
-
アクセス2016のレポートで、テ...
-
教えてください! アクセスの書...
-
Access 複数条件検索の設定が上...
おすすめ情報