2016-01-21 85 views
1

我有一个带有3列的列表框的用户窗体,第一列填充由数组初始化。第二列和第三列留空。在选择时,通过函数调用输入框,输入并验证第二列中需要的数字。我已经试过这与List财产,但我得到的错误运行时间380,无法设置Listproperty

运行时错误“380”:

无法设置列表属性。无效的属性值。

这里是一个操纵列表框的子:

Private Sub lstKarren_Change() 
    Dim i As Long 
    Dim karName As String 
    With Me.lstKarren 
     For i = 0 To .ListCount - 1 
      If .Selected(i) And Not Karren(i) Then 
       Karren(i) = True 
       .List(i, 1) = numValInput 
      ElseIf Not .Selected(i) And Karren(i) Then 
       Karren(i) = False 
       .List(i, 1) = Empty 
      End If 
     Next i 
    End With 

End Sub 

调试器突出了行:

.list(i, 1) = numValInput 'numValInput is function which returns a number as a string. 

代码罚款运行我将其更改为.List(i)的时刻,但随后改变第一列,而不是第二列。我发现informationList属性应该做的设置第二列的技巧,但我不明白为什么我得到运行时错误。

回答

1

问题是由列表框被polpulated的方式造成,改变:

Me.lstKarren.List = Array("Selectie", "Links AB", "Links CD", "Rechts AB", "Rechts CD") 

到:

With Me.lstKarren 
    .AddItem "Selectie" 
    .AddItem "Links AB" 
    .AddItem "Links CD" 
    .AddItem "Rechts AB" 
    .AddItem "Rechts CD" 
End With 

解决的问题。