回答編集履歴
5
変更
test
CHANGED
@@ -44,7 +44,7 @@
|
|
44
44
|
|
45
45
|
(追記)
|
46
46
|
|
47
|
-
Publicを使
|
47
|
+
Publicを使ってこれにセットする方法もあると思います。(好んで使っています)
|
48
48
|
|
49
49
|
```VBA
|
50
50
|
|
4
(追記)
test
CHANGED
@@ -39,3 +39,45 @@
|
|
39
39
|
End Sub
|
40
40
|
|
41
41
|
```
|
42
|
+
|
43
|
+
---
|
44
|
+
|
45
|
+
(追記)
|
46
|
+
|
47
|
+
Publicを使う方法もあると思います。(好んで使います)
|
48
|
+
|
49
|
+
```VBA
|
50
|
+
|
51
|
+
Call ctrlbtn(n).SetCtrl(NewB)
|
52
|
+
|
53
|
+
Set ctrlbtn(n).tgtRange = Cells(row, n)
|
54
|
+
|
55
|
+
```
|
56
|
+
|
57
|
+
```Class
|
58
|
+
|
59
|
+
Private WithEvents tgtCtrl As MSForms.CommandButton
|
60
|
+
|
61
|
+
Public tgtRange As Range
|
62
|
+
|
63
|
+
Public Sub SetCtrl(new_ctrl As MSForms.CommandButton)
|
64
|
+
|
65
|
+
Set tgtCtrl = new_ctrl
|
66
|
+
|
67
|
+
End Sub
|
68
|
+
|
69
|
+
Private Sub tgtCtrl_Click()
|
70
|
+
|
71
|
+
MsgBox "コントロール名: " & tgtCtrl.Name & " - " & tgtRange.row & " - " & tgtRange.Column
|
72
|
+
|
73
|
+
Dim intRow As Long
|
74
|
+
|
75
|
+
Dim intcol As Long
|
76
|
+
|
77
|
+
intRow = tgtRange.row
|
78
|
+
|
79
|
+
intcol = tgtRange.Column
|
80
|
+
|
81
|
+
End Sub
|
82
|
+
|
83
|
+
```
|
3
変更
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
hatena19様の言われている
|
1
|
+
hatena19様の言われているクラスにセルも格納は下記の様な感じと思います。
|
2
2
|
|
3
3
|
```VBA
|
4
4
|
|
2
n
test
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
```VBA
|
4
4
|
|
5
|
-
Call ctrlBtn(n).SetCtrl(NewB, Cells(Row,
|
5
|
+
Call ctrlBtn(n).SetCtrl(NewB, Cells(Row, n))
|
6
6
|
|
7
7
|
```
|
8
8
|
|
1
変更
test
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
hatena19様の言われている
|
1
|
+
hatena19様の言われている、クラスにラベルコントロールとセルも格納は下記の様な感じと思います。
|
2
2
|
|
3
3
|
```VBA
|
4
4
|
|
@@ -28,8 +28,6 @@
|
|
28
28
|
|
29
29
|
MsgBox "コントロール名: " & tgtCtrl.Name & " - " & tgtRange.Row & " - " & tgtRange.Column
|
30
30
|
|
31
|
-
|
32
|
-
|
33
31
|
Dim intRow As Long
|
34
32
|
|
35
33
|
Dim intcol As Long
|
@@ -38,8 +36,6 @@
|
|
38
36
|
|
39
37
|
intcol = tgtRange.Column
|
40
38
|
|
41
|
-
|
42
|
-
|
43
39
|
End Sub
|
44
40
|
|
45
41
|
```
|