回答編集履歴
8
こちらかがいいかも
answer
CHANGED
@@ -110,6 +110,8 @@
|
|
110
110
|
```
|
111
111
|
|
112
112
|
Listboxで作るとこんな感じでしょうか・・・・。
|
113
|
+
コードはコンボがリストボックスに
|
114
|
+
なっただけでほぼ同じです。
|
113
115
|
|
114
116
|

|
115
117
|
|
7
こちらかがいいかも
answer
CHANGED
@@ -108,6 +108,11 @@
|
|
108
108
|
|
109
109
|
End Sub
|
110
110
|
```
|
111
|
+
|
112
|
+
Listboxで作るとこんな感じでしょうか・・・・。
|
113
|
+
|
114
|
+

|
115
|
+
|
111
116
|
<初回の投稿>
|
112
117
|
拝見しました。チェックボックスの組み合わせですがチェックボックスは複数選択が可能なので
|
113
118
|
現実的ではないような気がします。
|
6
こちらかがいいかも
answer
CHANGED
@@ -1,5 +1,6 @@
|
|
1
1
|
こんばんは。少し強引ですがコンボボックスの連動のみCollectionを使って作ってみました。
|
2
|
+
あまり時間をかけれずコードが汚いので、調整をお願いします。
|
2
|
-
今回は、オートフィルターのデータ集計方法はふれていません。
|
3
|
+
また。今回は、オートフィルターのデータ集計方法はふれていません。
|
3
4
|
|
4
5
|
|
5
6
|

|
@@ -7,8 +8,11 @@
|
|
7
8
|
メインシート:master
|
8
9
|
セルA列~D列
|
9
10
|
Userform1
|
10
|
-
Combobox1
|
11
|
+
Combobox1:商品名
|
12
|
+
Combobox2:サイズ
|
13
|
+
Combobox3:産地
|
11
14
|
|
15
|
+
|
12
16
|
```VBA
|
13
17
|
Private Sub ComboBox2_Change()
|
14
18
|
|
5
こちらかがいいかも
answer
CHANGED
@@ -1,11 +1,13 @@
|
|
1
|
-
こんばんは。少し強引ですがコンボボックスの連動
|
1
|
+
こんばんは。少し強引ですがコンボボックスの連動のみCollectionを使って作ってみました。
|
2
|
-
|
2
|
+
今回は、オートフィルターのデータ集計方法はふれていません。
|
3
|
-
まずは、コードを上げさせていただきます。
|
4
3
|
|
4
|
+
|
5
5
|

|
6
6
|
|
7
7
|
メインシート:master
|
8
8
|
セルA列~D列
|
9
|
+
Userform1
|
10
|
+
Combobox1,Combobox2,Combobox3
|
9
11
|
|
10
12
|
```VBA
|
11
13
|
Private Sub ComboBox2_Change()
|
4
こちらかがいいかも
answer
CHANGED
File without changes
|
3
こちらかがいいかも
answer
CHANGED
@@ -1,6 +1,12 @@
|
|
1
|
+
こんばんは。少し強引ですがコンボボックスの連動部分のみ
|
1
|
-
|
2
|
+
入力フォームをCollectionを使って作ってみました。
|
2
3
|
まずは、コードを上げさせていただきます。
|
3
4
|
|
5
|
+

|
6
|
+
|
7
|
+
メインシート:master
|
8
|
+
セルA列~D列
|
9
|
+
|
4
10
|
```VBA
|
5
11
|
Private Sub ComboBox2_Change()
|
6
12
|
|
2
こちらかがいいかも
answer
CHANGED
@@ -96,6 +96,7 @@
|
|
96
96
|
|
97
97
|
End Sub
|
98
98
|
```
|
99
|
+
<初回の投稿>
|
99
100
|
拝見しました。チェックボックスの組み合わせですがチェックボックスは複数選択が可能なので
|
100
101
|
現実的ではないような気がします。
|
101
102
|
|
1
こちらかがいいかも
answer
CHANGED
@@ -1,8 +1,105 @@
|
|
1
|
+
こんばんは。少し強引ですがCollectionを使って作ってみました。
|
2
|
+
まずは、コードを上げさせていただきます。
|
3
|
+
|
4
|
+
```VBA
|
5
|
+
Private Sub ComboBox2_Change()
|
6
|
+
|
7
|
+
Dim MyData3 As New Collection
|
8
|
+
Dim cnt3 As Long
|
9
|
+
Dim i3 As Long
|
10
|
+
|
11
|
+
|
12
|
+
cnt3 = Sheets("master").Range("A1").CurrentRegion.Rows.Count
|
13
|
+
|
14
|
+
商品名 = ComboBox1.Text
|
15
|
+
サイズ = ComboBox2.Text
|
16
|
+
|
17
|
+
ComboBox3.Clear
|
18
|
+
|
19
|
+
On Error Resume Next
|
20
|
+
For i3 = 2 To cnt3
|
21
|
+
|
22
|
+
If Sheets("master").Range("B" & i3).Value = 商品名 Then
|
23
|
+
|
24
|
+
If Sheets("master").Range("C" & i3).Value = サイズ Then
|
25
|
+
MyData3.Add Sheets("master").Range("D" & i3).Value, Sheets("master").Range("D" & i3).Value
|
26
|
+
End If
|
27
|
+
End If
|
28
|
+
|
29
|
+
Next i3
|
30
|
+
On Error GoTo 0
|
31
|
+
|
32
|
+
For i3 = 1 To MyData3.Count
|
33
|
+
|
34
|
+
ComboBox3.AddItem MyData3(i3)
|
35
|
+
Next
|
36
|
+
|
37
|
+
|
38
|
+
End Sub
|
39
|
+
Private Sub ComboBox1_Change()
|
40
|
+
Dim MyData2 As New Collection
|
41
|
+
Dim cnt2 As Long
|
42
|
+
Dim i2 As Long
|
43
|
+
|
44
|
+
|
45
|
+
cnt2 = Sheets("master").Range("A1").CurrentRegion.Rows.Count
|
46
|
+
|
47
|
+
商品名 = ComboBox1.Text
|
48
|
+
|
49
|
+
ComboBox2.Clear
|
50
|
+
|
51
|
+
'■重複しない商品名のリストを作成(エラーを無視)
|
52
|
+
On Error Resume Next
|
53
|
+
For i2 = 2 To cnt2
|
54
|
+
|
55
|
+
If Sheets("master").Range("B" & i2).Value = 商品名 Then
|
56
|
+
|
57
|
+
MyData2.Add Sheets("master").Range("C" & i2).Value, Sheets("master").Range("C" & i2).Value
|
58
|
+
End If
|
59
|
+
|
60
|
+
Next i2
|
61
|
+
On Error GoTo 0
|
62
|
+
|
63
|
+
'■商品名のリストを作成
|
64
|
+
|
65
|
+
For i2 = 1 To MyData2.Count
|
66
|
+
|
67
|
+
ComboBox2.AddItem MyData2(i2)
|
68
|
+
Next
|
69
|
+
|
70
|
+
|
71
|
+
End Sub
|
72
|
+
|
73
|
+
Private Sub UserForm_Initialize()
|
74
|
+
Dim MyData1 As New Collection
|
75
|
+
|
76
|
+
Dim cnt As Long
|
77
|
+
Dim i As Long
|
78
|
+
|
79
|
+
cnt = Sheets("master").Range("A1").CurrentRegion.Rows.Count
|
80
|
+
|
81
|
+
'■重複しない商品名のリストを作成(エラーを無視)
|
82
|
+
On Error Resume Next
|
83
|
+
For i = 2 To cnt
|
84
|
+
|
85
|
+
MyData1.Add Sheets("master").Range("B" & i).Value, Sheets("master").Range("B" & i).Value
|
86
|
+
|
87
|
+
Next i
|
88
|
+
On Error GoTo 0
|
89
|
+
|
90
|
+
'■商品名のリストを作成
|
91
|
+
|
92
|
+
For i = 1 To MyData1.Count
|
93
|
+
|
94
|
+
ComboBox1.AddItem MyData1(i)
|
95
|
+
Next
|
96
|
+
|
97
|
+
End Sub
|
98
|
+
```
|
1
99
|
拝見しました。チェックボックスの組み合わせですがチェックボックスは複数選択が可能なので
|
2
100
|
現実的ではないような気がします。
|
3
101
|
|
4
102
|
他の記事ではコンボボックスが連動するように作られているようです。
|
5
|
-
|
6
103
|
[Excel VBA 複数(2つ)のコンボボックスに連動するリストを登録する](https://officedic.com/excel-vba-howto-combobox-2lists/)
|
7
104
|
|
8
105
|
VBA使うならシンプルな方法がいいので、参考にされると良いかと思います。
|