回答編集履歴
3
修正
answer
CHANGED
@@ -1,4 +1,5 @@
|
|
1
|
+
なぜコメントが貰えないか考えて、疑
|
1
|
-
|
2
|
+
問に真っ直ぐに答えてないからだと気づきました。
|
2
3
|
反射的に「こうしたらいいじゃん。」ってコード書いちゃったですが、
|
3
4
|
全体を網羅してなかったので、再度書き込みます。
|
4
5
|
|
@@ -28,35 +29,34 @@
|
|
28
29
|
```VBA
|
29
30
|
Option Explicit
|
30
31
|
|
31
|
-
Dim mflgCmd As Boolean
|
32
32
|
|
33
33
|
Private Sub UserForm_Initialize()
|
34
34
|
初期化
|
35
35
|
End Sub
|
36
36
|
|
37
37
|
Private Sub OptionButton2_Change()
|
38
|
+
If Me.OptionButton2.Value Then
|
38
|
-
|
39
|
+
With Me.TextBox1
|
39
|
-
|
40
|
+
.Enabled = True
|
40
|
-
|
41
|
+
.Locked = False
|
41
|
-
|
42
|
+
.BackColor = vbWhite
|
43
|
+
.SetFocus
|
42
|
-
|
44
|
+
End With
|
43
|
-
|
45
|
+
End If
|
44
46
|
End Sub
|
45
47
|
|
46
48
|
Private Sub CommandButton1_Click()
|
47
|
-
mflgCmd = True
|
48
|
-
|
49
49
|
With ActiveSheet.Range("A1").CurrentRegion
|
50
50
|
.Cells(.Rows.Count + 1, 1).Value = GetOPButtonValue
|
51
51
|
End With
|
52
|
-
|
52
|
+
|
53
53
|
初期化
|
54
54
|
End Sub
|
55
55
|
|
56
56
|
Private Function GetOPButtonValue() As String
|
57
57
|
Dim C As MSForms.Control
|
58
58
|
Dim s As String
|
59
|
-
|
59
|
+
|
60
60
|
For Each C In Me.Controls
|
61
61
|
If TypeName(C) = "OptionButton" Then
|
62
62
|
If C.Value = True Then
|
@@ -67,10 +67,9 @@
|
|
67
67
|
End If
|
68
68
|
Exit For
|
69
69
|
End If
|
70
|
-
|
71
70
|
End If
|
72
71
|
Next
|
73
|
-
|
72
|
+
|
74
73
|
GetOPButtonValue = s
|
75
74
|
End Function
|
76
75
|
|
@@ -84,6 +83,8 @@
|
|
84
83
|
End With
|
85
84
|
Me.OptionButton1.Value = False
|
86
85
|
Me.OptionButton2.Value = False
|
87
|
-
|
88
86
|
End Sub
|
89
|
-
```
|
87
|
+
```
|
88
|
+
|
89
|
+
だめだ^^;勘が鈍ってる><
|
90
|
+
https://www.moug.net/faq/viewtopic.php?p=494370#494370
|
2
修正
answer
CHANGED
@@ -28,41 +28,35 @@
|
|
28
28
|
```VBA
|
29
29
|
Option Explicit
|
30
30
|
|
31
|
+
Dim mflgCmd As Boolean
|
31
32
|
|
32
|
-
Dim mflg As Boolean
|
33
|
-
|
34
33
|
Private Sub UserForm_Initialize()
|
35
34
|
初期化
|
36
35
|
End Sub
|
37
36
|
|
38
|
-
|
39
37
|
Private Sub OptionButton2_Change()
|
40
38
|
With Me.TextBox1
|
41
39
|
.Enabled = True
|
42
40
|
.Locked = False
|
43
|
-
.BackColor = vbWhite
|
41
|
+
If mflgCmd = False Then .BackColor = vbWhite
|
44
42
|
End With
|
43
|
+
mflgCmd = False
|
45
44
|
End Sub
|
46
45
|
|
47
46
|
Private Sub CommandButton1_Click()
|
47
|
+
mflgCmd = True
|
48
|
+
|
48
49
|
With ActiveSheet.Range("A1").CurrentRegion
|
49
50
|
.Cells(.Rows.Count + 1, 1).Value = GetOPButtonValue
|
50
51
|
End With
|
51
|
-
|
52
|
+
|
52
53
|
初期化
|
53
|
-
|
54
|
-
If mflg = False Then
|
55
|
-
mflg = True
|
56
|
-
CommandButton1_Click
|
57
|
-
Else
|
58
|
-
mflg = False
|
59
|
-
End If
|
60
54
|
End Sub
|
61
55
|
|
62
56
|
Private Function GetOPButtonValue() As String
|
63
57
|
Dim C As MSForms.Control
|
64
58
|
Dim s As String
|
65
|
-
|
59
|
+
|
66
60
|
For Each C In Me.Controls
|
67
61
|
If TypeName(C) = "OptionButton" Then
|
68
62
|
If C.Value = True Then
|
@@ -73,10 +67,10 @@
|
|
73
67
|
End If
|
74
68
|
Exit For
|
75
69
|
End If
|
76
|
-
|
70
|
+
|
77
71
|
End If
|
78
72
|
Next
|
79
|
-
|
73
|
+
|
80
74
|
GetOPButtonValue = s
|
81
75
|
End Function
|
82
76
|
|
@@ -90,11 +84,6 @@
|
|
90
84
|
End With
|
91
85
|
Me.OptionButton1.Value = False
|
92
86
|
Me.OptionButton2.Value = False
|
93
|
-
|
87
|
+
|
94
88
|
End Sub
|
95
|
-
```
|
89
|
+
```
|
96
|
-
う~~ん。
|
97
|
-
1番の質問の色が変わらない現象確認しました^^;
|
98
|
-
原因&回避方法がわからないので、
|
99
|
-
力技で回避^^;(なぜかもう1回コマンドボタンをクリックしたことにすると変わる^^;)
|
100
|
-
(内緒で他の掲示板で聞いてみてます。^^;;)
|
1
修正
answer
CHANGED
@@ -94,7 +94,7 @@
|
|
94
94
|
End Sub
|
95
95
|
```
|
96
96
|
う~~ん。
|
97
|
-
|
97
|
+
1番の質問の色が変わらない現象確認しました^^;
|
98
98
|
原因&回避方法がわからないので、
|
99
|
-
力技で回避^^;
|
99
|
+
力技で回避^^;(なぜかもう1回コマンドボタンをクリックしたことにすると変わる^^;)
|
100
100
|
(内緒で他の掲示板で聞いてみてます。^^;;)
|