回答編集履歴

1

複数セルで実行できないようにする場合のコード追記

2020/08/11 09:50

投稿

TanakaHiroaki
TanakaHiroaki

スコア1063

test CHANGED
@@ -19,3 +19,39 @@
19
19
  End Sub
20
20
 
21
21
  ```
22
+
23
+ **<追記 8/11 18:50>**
24
+
25
+  Worksheet_Change イベントは、複数セルの処理でハマることが予想されます。
26
+
27
+  YT0014さんから要求仕様があいまいとのご指摘があったことを踏まえ、複数プロシージャの同時実行を禁止する場合のコードを追記しました。
28
+
29
+
30
+
31
+ ```VBA
32
+
33
+ Private Sub Worksheet_Change(ByVal Target As Range)
34
+
35
+
36
+
37
+ '複数セルの処理追記
38
+
39
+ If Target.Count > 1 Then
40
+
41
+ MsgBox "複数プロシージャの同時実行を禁止します。"
42
+
43
+ Exit Sub
44
+
45
+ End If
46
+
47
+
48
+
49
+ If Not Intersect(Target, Range("A1")) Is Nothing Then Call Proc_A
50
+
51
+
52
+
53
+ If Not Intersect(Target, Range("B1")) Is Nothing Then Call Proc_B
54
+
55
+ End Sub
56
+
57
+ ```