Private Sub UserForm_Initialize() With ActiveSheet Me.ListBox1.RowSource = .Range(.[A2], .Cells(.Rows.Count, "L").End(xlUp)).Address(0, 0, 1, 1) End With End Sub
Private Sub UserForm_Initialize() With ActiveSheet Me.ListBox1.RowSource = .Range(.[A2], .Cells(.Rows.Count, "L").End(xlUp)).Address(0, 0, 1, 1) End With End Sub
krosav4ig, Спасибо! Просто есть форма с листбоксом, а в нем огромный список, след.строка заполняется на основе предыдущей через текстбоксы. Оно мне надо чтоб каждый раз не листать до конца списка.
Но у меня чего-то не сработало! А несработало, наверное, это with activSheet - это значит на активном листе, а мне надо выделить строку в листбоксе! Нарыл вот такой метод, но работает через раз - иногда выделяется пустая строка далеко ниже конца списка
krosav4ig, Спасибо! Просто есть форма с листбоксом, а в нем огромный список, след.строка заполняется на основе предыдущей через текстбоксы. Оно мне надо чтоб каждый раз не листать до конца списка.
Но у меня чего-то не сработало! А несработало, наверное, это with activSheet - это значит на активном листе, а мне надо выделить строку в листбоксе! Нарыл вот такой метод, но работает через раз - иногда выделяется пустая строка далеко ниже конца списка
Иногда погода в Африке совпадает с нужной вам. Исключительно решение озвученного вопроса (к тому, что нужно, и как нужно, отношения не имеет) [vba]
Код
Private Sub CommandButton1_Click() With Me.ListBox1 For i = .ListCount - 1 To 0 Step -1 For j = .ColumnCount - 1 To 0 Step -1 If Len(.List(i, j)) Then MsgBox "Row " & i: Exit Sub Next Next End With End Sub
Иногда погода в Африке совпадает с нужной вам. Исключительно решение озвученного вопроса (к тому, что нужно, и как нужно, отношения не имеет) [vba]
Код
Private Sub CommandButton1_Click() With Me.ListBox1 For i = .ListCount - 1 To 0 Step -1 For j = .ColumnCount - 1 To 0 Step -1 If Len(.List(i, j)) Then MsgBox "Row " & i: Exit Sub Next Next End With End Sub