2012-08-23 33 views
1

我不确定这是为什么,但在Click事件中,我需要在列表框中选中所选项目,但是当循环初始化时,没有可用的选定项目。MS Access LisBox On_click ItemsSelected为空

Private Sub lstUPSCs_Click() 
     On Error GoTo Err_lstAttribute_Change 

        Dim strSelect As String 
        Dim sQuery As String 
        Dim sUPSC As String 
        Dim itm As Variant 


        For Each itm In Me.lstUPSCs.ItemsSelected 
         strSelect = strSelect & "," & LTrim(RTrim(Mid(lstUPSCs.Column(0, itm), 1, 8))) 

        Next 

END SUB 

任何帮助解决这个问题吗?

回答

0

对于多选列表框,以下代码应返回第一列(列0)中的值列表。我通常不会为多选列表框使用单击事件。

For Each itm In Me.lstUNSPSCs.ItemsSelected 
    strSelect = strSelect & "," & Me.lstUNSPSCs.Column(0, itm) 
Next 

strSelect = Mid(strSelect,2) 

对于没有多选的列表框,列表框的默认值是绑定列的值。上面的代码将无法正常工作,但你可以简单地说:

Me.lstUNSPSCs 

或者

Me.lstUNSPSCs.Column(2) 

在数量是从零开始任何有效的列数。

另外,没有必要使用LTrim,RTrim - Trim涵盖了两者。

+0

这似乎并没有。 Me.lstUNSPSCs.ItemsSelected.Count = 0.我不知道为什么。 – Kobojunkie

+0

你有正确的名字吗?列表框多选? – Fionnuala

+0

你有没有明确的选项在代码的顶部? – Fionnuala