Новый для VBA и несколько разочарован. пытаясь сделать форму для моих коллег-учителей, чтобы упростить оформление документов.
У меня есть список в форме
1. яблоко
2. оранжевый
3. виноград
Если бы пользователь выбрал в списке яблоко и виноград, я бы хотел, чтобы в ячейке были только индексы. Таким образом, чтобы напечатать (1,3) в ячейке. Я не хочу слов.
Мой текущий код
Private Sub SpedAccomAddBtn_Click()
'variable to count multiple selections'
VarSped = " "
'loop to keep track of indexes of selected items'
For X = 0 To Me.SpedListBx.ListCount - 1 'count through list
If Me.SpedListBx.Selected(X) Then
If VarSped = " " Then 'if blank then record first item'
VarSped = Me.SpedListBx.ListIndex + 1 'first selected item. +1 because excel is a 0 based index'
Else 'if not the first selection add a , between selections'
VarSped = VarSped & "," & Me.SpedListBx.ListIndex + 1
End If
End If
Next X
ThisWorkbook.Sheets("Master SPED Sheet").Range("c4") = VarSped 'print to cell'
Если я использую предыдущий пример выбора Apple и Grape, я получаю (3,3), а не (1,3). Я не могу понять, почему VarSped продолжает перезаписываться.
(Я новичок в кодировании, и мне нужно все комментировать, поэтому я чувствую, что знаю, что делаю)