Usted puede hacer un bucle For
para examinar cada fila en el cuadro de lista, y hacer lo que sea con las filas que se seleccionan. En este ejemplo, muestro la segunda columna de elementos seleccionados en el lstLocations listbox. (La numeración de columnas comienza con cero.)
Private Sub cmdShowSelections_Click()
Dim lngRow As Long
Dim strMsg As String
With Me.lstLocations
For lngRow = 0 To .ListCount - 1
If .Selected(lngRow) Then
strMsg = strMsg & ", " & .Column(1, lngRow)
End If
Next lngRow
End With
' strip off leading comma and space
If Len(strMsg) > 2 Then
strMsg = Mid(strMsg, 3)
End If
MsgBox strMsg
End Sub
Nota Supuse que desea los elementos seleccionados en el cuadro de lista. Si desea todos los artículos, seleccionados o no, puede usar .ItemData
como @DavidRelihan suggested. Sin embargo, en ese caso, puede obtenerlos del cuadro de lista .RowSource
.
No olvide que puede tener un cuadro de lista de selección múltiple y usar la propiedad Seleccionado si el espacio en el formulario se convierte en un problema. – Fionnuala