Страницы: 1
RSS
VBA Отбор данных из Listbox из определенного столбца при множественном выборе
 
Добрый день.
Никак не соображу, как мне из Listbox отобрать данные из четвертого столбца по выбранным строкам. Всего столбцов четыре, в первых трех находятся справочно-описательная информация, собственно данные - в четвертом. Числовые значения.
Вот этот код работает, но только для первого столбца:
Код
Private Sub ButtonSetKoef_Click()
' ///////////формула коэф-тов
    Dim Msg As String
    Dim i As Integer

    If ListBoxKoef.ListIndex = -1 Then
        Msg = "Ничего не выделено"
    Else
        Msg = ""
        For i = 0 To ListBoxKoef.ListCount - 1 '  работает
            If ListBoxKoef.Selected(i) Then _
              Msg = Msg & ListBoxKoef.List(i) & vbCrLf '  работает, но выводит толькой 1-й столбец
             
        Next i
    End If
    MsgBox "Вы выбрали: " & vbCrLf & Msg
End Sub
Пытался прописать так, но во все отобранные позиции загружается значение последнего из выбранных:
Код
             If ListBoxKoef.Selected(i) Then _
              Msg = Msg & ListBoxKoef.List(ListBoxKoef.ListIndex, 3) & vbCrLf
Потом уже вычитал, что при мультивыборе ListIndex так и должен работать.
В дальнейшем выбранные данные предполагается использовать при расчете в формуле:
Код
Selection.FormulaR1C1 = "=1+(1.02-1)+(1.04-1)" 'образец
где, 1,02... 1,04 и есть данные, которые надо выгрузить из 4-го столбца. Данных может быть от одного до нескольких значений. Но думаю с формулой то я справлюсь. Было бы что в неё подставлять.
 
Если правильно понял, то так должно работать
Код
Msg = Msg & ListBoxKoef.List(i, 3) & vbCrLf
 
Roman M, Большое спасибо, заработало. Теперь можно дальше продолжить  :)  
Страницы: 1
Наверх