[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『Listボックスに格納するデータについて』(くら)
ListBoxに表示するリストとして、列名を表したいのですが、リストの10列目で実行時エラー"380" Listプロパティが設定出来ませんと出てしまいます。
25列まで表示したいのですが。どうしていいかわかりません。どなたかご教授お願いします。
リストに表示する方法は他にもあると思いますが、この方法を選んだのはこの後いらないリストを削除したいので選びました。よろしくお願いします。
sub sample()
Dim i As Long Dim j As Long Dim t As Long
Userform3.ListBox1.Clear
t = Worksheets("Sheet1").Cells(Rows.Count, 3).End(xlUp).Row
With Worksheets("sheet1") For i = 3 To t Userform3.ListBox1.AddItem .Cells(i, 1).Value Userform3.ListBox1.List(j, 1) = .Cells(i, 2).Value Userform3.ListBox1.List(j, 2) = .Cells(i, 3).Value
中略
Userform3.ListBox1.List(j, 10) = .Cells(i, 11).Value'ここでエラー j = j + 1 Next i End With
If Not Userform1.TextBox5.Text = "" Then For i = Userform3.ListBox1.ListCount - 1 To 0 Step -1 If Not UCase(Userform3.ListBox1.List(i, 1)) = _ UCase(Userform3.TextBox5.Text) Then Userform3.ListBox1.RemoveItem (i) End If Next i End If
If Not Userform3.TextBox5.Value = ",," Then For i = Userform3.ListBox1.ListCount - 1 To 0 Step -1 If Not Userform3.ListBox1.List(i, 0) = _ Userform3.ListBox2.Value Then Userform3.ListBox1.RemoveItem (i) End If Next i End If End Sub
ColumnCountを10に設定していませんか? その場合、実行時エラー番号は381かもしれませんが。 リストボックスのインデックスは0から始まるので、 Userform3.ListBox1.List(j, 10) = .Cells(i, 11).Value というコードと 「リストの10列目で実行時エラー」という質問の文章は矛盾します。 (コードは11列目を設定しようとしている) (みやほりん)(-_∂)b
みやほりんさんありがとうございます。
ご指摘の通りリストの11列目でエラーが出てしまいます。間違えていました。すみ ません。 このエラーを回避するにはどの様な方法があるのでしょうか? ご教授お願いします。
>ColumnCountを10に設定していませんか? まずはこれを確認してください。 (みやほりん)(-_∂)b
みやほりんさんありがとうございます。
ListBoxプロパティのColumnCountは25に設定してあります。
よろしくお願いします。
私も知りませんでしたが、ヘルプには次の記載がありました。 //////////////////////////////////////////////////// 表示可能な列がすべて表示されます。非連結データソース の場合は、最大 10 列 (0 〜 9) までの制限があります。 //////////////////////////////////////////////////// 必要なデータを先にシートなどに転記して、 完成したリストをRowSourceプロパティに設定する。 (みやほりん)(-_∂)b
Dim i As Long Dim j As Long Dim t As Long Userform3.ListBox1.ColumnCount = 25 Userform3.ListBox1.Clear With Worksheets("sheet1") t = .Cells(.Rows.Count, 3).End(xlUp).Row Userform3.ListBox1.List = .Range(.Cells(1, 1), .Cells(t, 25)).Value End With
このようにしてみては?
但し、
>列名を表したいのですが
が各列の項目名を表示したいということなら、Rowsourceプロパティを使わなくてはなりませんが・・・。
ichinose
ichinoseさん
ありがとうございます。 思い通りのマクロが完成しました。 感謝!感謝!です。
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.