回答編集履歴

2

コード修正

2019/11/05 19:52

投稿

hatena19
hatena19

スコア34073

test CHANGED
@@ -42,9 +42,9 @@
42
42
 
43
43
  Dim lastRow As Long
44
44
 
45
- lastRow = .Cells(Rows.Count, col).End(xlUp).Row
45
+ lastRow = .Cells(.Rows.Count, col).End(xlUp).Row
46
46
 
47
- ComboBox2.List = .Range(Cells(5, col), Cells(lastRow, col)).Value
47
+ ComboBox2.List = .Range(.Cells(5, col), .Cells(lastRow, col)).Value
48
48
 
49
49
  ComboBox2.Text = ""
50
50
 

1

解説の追加

2019/11/05 19:51

投稿

hatena19
hatena19

スコア34073

test CHANGED
@@ -61,3 +61,5 @@
61
61
  Changeイベントだと一文字入力したり削除しただけで発生するのでAfterUpdateイベントを使いました。
62
62
 
63
63
  Listプロパティには配列を代入できます。セル範囲.Valueで配列になります。
64
+
65
+ ListIndexプロパティで何番目が選択されたか取得できます(0起点)。それを利用して列位置を計算してます。