質問編集履歴
2
直したコードを追加しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -583,3 +583,61 @@
|
|
583
583
|
[エクセルVBAでクラスのインスタンス生成時に初期データを格納するメソッドを作る方法](https://tonari-it.com/excel-vba-class-constructor/)
|
584
584
|
|
585
585
|
リンクの一連の記事でクラスモジュールとCollectionオブジェクトを勉強しました。
|
586
|
+
|
587
|
+
|
588
|
+
|
589
|
+
```VBA
|
590
|
+
|
591
|
+
Option Explicit
|
592
|
+
|
593
|
+
|
594
|
+
|
595
|
+
Public chBc As Long
|
596
|
+
|
597
|
+
Private Chkes() As clsLinkedCheckBoxes'動的配列を宣言
|
598
|
+
|
599
|
+
|
600
|
+
|
601
|
+
'コマンドボタン1の中 A3にチェックボックスの数を格納
|
602
|
+
|
603
|
+
dc = Range("A1").End(xlToRight).Column - 2
|
604
|
+
|
605
|
+
chBc = apc * dc
|
606
|
+
|
607
|
+
Range("A3").Value = chBc
|
608
|
+
|
609
|
+
|
610
|
+
|
611
|
+
Private Sub clsLinked()
|
612
|
+
|
613
|
+
Dim i As Long
|
614
|
+
|
615
|
+
Dim Chkes As clsLinkedCheckBoxes 'ここでクラス変数を宣言、生成はしない
|
616
|
+
|
617
|
+
|
618
|
+
|
619
|
+
|
620
|
+
|
621
|
+
chBc = Range("A3").Value
|
622
|
+
|
623
|
+
With Me 'チェックボックスのあるシート
|
624
|
+
|
625
|
+
For i = 1 To chBc
|
626
|
+
|
627
|
+
Set Chkes = New clsLinkedCheckBoxes 'ここでクラスの実体を生成してクラス変数に格納
|
628
|
+
|
629
|
+
Chkes.SetCtrl .OLEObjects("CheckBox" & i + chBc).Object, _
|
630
|
+
|
631
|
+
.OLEObjects("CheckBox" & i).Object
|
632
|
+
|
633
|
+
|
634
|
+
|
635
|
+
Next
|
636
|
+
|
637
|
+
End With
|
638
|
+
|
639
|
+
End Sub
|
640
|
+
|
641
|
+
|
642
|
+
|
643
|
+
```
|
1
画像を追加しました。
test
CHANGED
File without changes
|
test
CHANGED
@@ -30,6 +30,12 @@
|
|
30
30
|
|
31
31
|
|
32
32
|
|
33
|
+
追記分
|
34
|
+
|
35
|
+

|
36
|
+
|
37
|
+
|
38
|
+
|
33
39
|
### 発生している問題・エラーメッセージ
|
34
40
|
|
35
41
|
|