KC-Mass wrote:
I am working with a multi select list box in access. The code is:
Sub MoveToCustomer2()
Dim frm As Form, Ctl As Control
Dim varItem As Variant
Set frm = Forms!frmResolveCustomers
Set Ctl = frm!lstUnassigned
For Each varItem In Ctl.ItemsSelected
Debug.Print varItem
Debug.Print Ctl.Column(0)
Next varItem
End Sub
If I select items 2, 3, 6and 8 the program prints 1,2,5,7 which is correct
(zero based)but for
ctl.Column(0) it prints the value of the first selectedItems for each of the
4 selected records.
They should all be different.
Is the reference to the column wrong?
Yes.
'this returns the index
Private Sub Command1_Click()
Dim var As Variant
For Each var In Me.List0.ItemsSelected
MsgBox var
Next
End Sub
'this returns the values using the index. You can
'also use ItemData as well to get the value per online help.
Private Sub Command2_Click()
Dim var As Variant
For Each var In Me.List0.ItemsSelected
MsgBox Me.List0.Column(0, var) & " " & Me.List0.Column(1, var)
Next
End Sub
'this returns the values using a counter
Private Sub Command3_Click()
Dim intFor As Integer
For intFor = 0 To Me.List0.ListCount - 1
If Me.List0.Selected(intFor) Then
MsgBox Me.List0.Column(0, intFor) & " " &
Me.List0.Column(1, intFor)
End If
Next
End Sub
Garden Party
http://www.youtube.com/watch?v=O_exY9ptMbA
>
Thx
Kevin