| 
    
     |  | おはようございます 
 ▼Tamurasine さん:
 >空の状態のリストボックスに
 >
 >ListBox1.AddItem "項目1"
 >
 >ListBox1.List(0, 1) = "項目2"
 >ListBox1.List(0, 2) = "項目3"
 >ListBox1.List(0, 3) = "項目4"
 >ListBox1.List(0, 4) = "項目5"
 >ListBox1.List(0, 5) = "項目6"
 >ListBox1.List(0, 6) = "項目7"
 >ListBox1.List(0, 7) = "項目8"
 >ListBox1.List(0, 8) = "項目9"
 >ListBox1.List(0, 9) = "項目10"
 >ListBox1.List(0, 10) = "項目11"
 >ListBox1.List(0, 11) = "項目12"
 >
 >というように入力したいのですが・・
 >ListBox1.List(0, 9) = "項目10"
 >までなら正常に動作するのですがそれ以降を加えるとエラーになってしまいます。
 >
 >なぜでしょうか?よろしくお願いします
 
 ヘルプを見ると
 -----------------------------------------------------
 ColumnCount プロパティ
 
 解説
 
 たとえば、社員名簿のフォームで、そのリスト ボックス (ListBox) コントロールの ColumnCount プロパティに 3 を指定して、1 列目には姓を、2 列目には名前を、3 列目には社員コードを表示するものとします。
 
 ColumnCount プロパティに 0 を設定すると、列はすべて表示されなくなります。-1 を設定すると、表示可能な列がすべて表示されます。非連結データ ソースの場合は、最大 10 列 (0 〜 9) までの制限があります。
 -----------------------------------------------------
 
 これが原因だと思われます
 
 ですので配列を使って
 
 Dim LTmp(0, 12)
 
 LTmp(0, 0) = "項目1"
 LTmp(0, 1) = "項目2"
 LTmp(0, 2) = "項目3"
 LTmp(0, 3) = "項目4"
 LTmp(0, 4) = "項目5"
 LTmp(0, 5) = "項目6"
 LTmp(0, 6) = "項目7"
 LTmp(0, 7) = "項目8"
 LTmp(0, 8) = "項目9"
 LTmp(0, 9) = "項目10"
 LTmp(0, 10) = "項目11"
 LTmp(0, 11) = "項目12"
 
 ListBox1.List() = LTmp
 
 のようにすればエラーにならず、処理できます
 
 |  |