This was answered previously. For an explantion and some cautions, check
the original answer.
Private Sub InsertClassDates()
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then
r = i + 2
Select Case True
Case ComboBox1.ListIndex = 0: Cells(r, 6) = TextBox1.Value
Case ComboBox1.ListIndex = 1: Cells(r, 7) = TextBox1.Value
Case ComboBox1.ListIndex = 2: Cells(r, 8) = TextBox1.Value
Case ComboBox1.ListIndex = 3: Cells(r, 9) = TextBox1.Value
Case ComboBox1.ListIndex = 4: Cells(r, 10) = TextBox1.Value
End Select
End if
Next i
Unload UserForm1
End Sub
could also do
Private Sub InsertClassDates()
For i = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then
r = i + 2
Cells(r,Combobox1.Listindex + 6).Value = Textbox1.Value
End if
Next i
Unload UserForm1
End Sub
--
Regards,
Tom Ogilvy
"jpendegraft " wrote in message
...
I am trying to loop a procedure to run for EACH item selected in a
ComboBox.
Basically, I want to populate a spreadsheet based with the value in a
textbox from a userform that also contains a ComboBox (this will
isolate the column) and a listbox (this will isolate the multple rows
that need to be populated).
Right now, it will properly populate the LAST item selected in the
listbox, rather than ALL items selected.
My current code is as follows:
Private Sub InsertClassDates()
For i = 1 To ListBox1.ListCount - 1
If ListBox1.Selected(i) = True Then _
r = ListBox1.ListIndex + 2
Select Case True
Case ComboBox1.ListIndex = 0: Cells(r, 6) = TextBox1.Value
Case ComboBox1.ListIndex = 1: Cells(r, 7) = TextBox1.Value
Case ComboBox1.ListIndex = 2: Cells(r, 8) = TextBox1.Value
Case ComboBox1.ListIndex = 3: Cells(r, 9) = TextBox1.Value
Case ComboBox1.ListIndex = 4: Cells(r, 10) =
TextBox1.Value
End Select
Next i
Unload UserForm1
End Sub
---
Message posted from http://www.ExcelForum.com/