|
▼VBWASURETA さん:
ちょっと修正したのと混ざってしまいました。
CurrentRegionがアクティブセル領域ということだったので、Range("A1")を
Range("B2")に変更したんです。i=2はその関係です。Rangeは("B2")です。
えっと、コンボボックスで区分を選択して、その区分で選んだもののリストを次のコンボボックスに表示させたいのです。下記の命令文では区分1〜3のみを表示させたいんです。
>ちょっと以下のところだけ実行してウォッチでDa配列を取ってみました。
>それで見るとしたいことがいまいちわからないです。
>
>>Private Sub UserForm_Initialize()
>> With Worksheets("品種")
>> Da = Range("A1").CurrentRegion.Value
>> For i = 2 To .Range("A1").End(xlToRight).Column
>> Me.区分.AddItem Da(1, i)
>> Next i
>> End With
>>End Sub
>
>----Da配列取得内容----
>Da(1,1) : "区分1"
>Da(1,2) : "区分2"
>Da(1,3) : "区分3"
>
>Da(2,1) : "リスト1"
>Da(2,2) : "リスト2-1"
>Da(2,3) : "リスト3-1"
>
>Da(3,1) : "リスト2"
>Da(3,2) : "リスト2-2"
>Da(3,3) : "リスト3-2"
>
>Da(4,1) : "リスト3"
>Da(4,2) : "リスト3-3"
>Da(4,3) : Empty 値
>-----------------
>
>
>で、結果としては以下の感じでしたよ?
>ん?と思う結果ですよね。
>因みにポポ さんが書かれてますサンプルデータでしてます。
>
>
>----処理結果----
>Da(1,2) : "区分2"
>Da(1,3) : "区分3"
>------------------
>
>
>で、よくわからないのがi = 2 からなのは何故でしょう?
>
>> For i = 2 To .Range("A1").End(xlToRight).Column
>> Me.区分.AddItem Da(1, i)
>> Next i
|
|