|
ユーザーフォームに配置したリストボックスにワークシートのデータを表示し、リストボックスでデータを選択するとテキストボックスにワークシートの値を表示するようにしています。
ワークシートのデータはRowSourceに売上データ!a2:t100として取得しています。
(a1:t1は見出し)
仮にワークシートの50行目までデータが入力されているとすると、リストボックスで51行目以降の空白行を選択するとテキストボックスにa1:t1の見出しが表示されてしまいます。
これを回避するにはどのようにすればよいでしょうか。
例えば、空白行を選択できないようにするとか、空白行を選択した場合は、テキストボックも空白をするなどと考えるのですが、実現する方法がわかりません。
そもそもなぜ空白行を選択すると見出しが表示されてしまうのかが分かりません。
Private Sub ListBox1_Click()
If Me.Tag = "Skip" Then Exit Sub
DB行 = ListBox1.Value + 1
txtBox0.Text = Worksheets("売上データ").Cells(DB行, 1)
txtBox1.Text = Worksheets("売上データ").Cells(DB行, 2)
txtBox2.Text = Worksheets("売上データ").Cells(DB行, 3)
txtBox3.Text = Worksheets("売上データ").Cells(DB行, 4)
txtBox4.Text = Worksheets("売上データ").Cells(DB行, 5)
txtBox5.Text = Worksheets("売上データ").Cells(DB行, 6)
txtBox6.Text = Worksheets("売上データ").Cells(DB行, 7)
txtBox7.Text = Worksheets("売上データ").Cells(DB行, 8)
txtBox8.Text = Worksheets("売上データ").Cells(DB行, 9)
txtBox9.Text = Worksheets("売上データ").Cells(DB行, 10)
txtBox10.Text = Worksheets("売上データ").Cells(DB行, 11)
txtBox11.Text = Worksheets("売上データ").Cells(DB行, 12)
txtBox12.Text = Worksheets("売上データ").Cells(DB行, 13)
txtBox13.Text = Worksheets("売上データ").Cells(DB行, 14)
txtBox14.Text = Worksheets("売上データ").Cells(DB行, 15)
txtBox15.Text = Worksheets("売上データ").Cells(DB行, 16)
txtBox16.Text = Worksheets("売上データ").Cells(DB行, 17)
txtBox17.Text = Worksheets("売上データ").Cells(DB行, 18)
txtBox18.Text = Worksheets("売上データ").Cells(DB行, 19)
txtBox19.Text = Worksheets("売上データ").Cells(DB行, 20)
End Sub
よろしくお願い致します。
|
|