Доброе время суток!!! Подскажите в этой же книге есть скрипт переноса выбранной строки(или несколько) в диалоговом окне , при нажатие на кнопку переносится на другой лист(Лист2), но вот переносится только 1 столбец, а хотелось бы чтоб вся выделенная строка(т.е. несколько столбцов в строке) Сам скрипт [vba]
Код
Private Sub btnOK_Click() Dim ws As Worksheet Dim newRow As Long, i As Long Set ws = Worksheets("Лист2") newRow = Application.WorksheetFunction.CountA(ws.Range("A:A")) + 1
For i = 0 To Me.lbDays.ListCount - 1 If Me.lbDays.Selected(i) Then ws.Cells(newRow, 1).Value = ws.Cells(newRow, 1).Value + Me.lbDays.List(i) + " ": newRow = newRow + 1 End If Next i End Sub
[/vba]
заранее спасибо
Доброе время суток!!! Подскажите в этой же книге есть скрипт переноса выбранной строки(или несколько) в диалоговом окне , при нажатие на кнопку переносится на другой лист(Лист2), но вот переносится только 1 столбец, а хотелось бы чтоб вся выделенная строка(т.е. несколько столбцов в строке) Сам скрипт [vba]
Код
Private Sub btnOK_Click() Dim ws As Worksheet Dim newRow As Long, i As Long Set ws = Worksheets("Лист2") newRow = Application.WorksheetFunction.CountA(ws.Range("A:A")) + 1
For i = 0 To Me.lbDays.ListCount - 1 If Me.lbDays.Selected(i) Then ws.Cells(newRow, 1).Value = ws.Cells(newRow, 1).Value + Me.lbDays.List(i) + " ": newRow = newRow + 1 End If Next i End Sub
Private Sub btnOK_Click() Dim ws As Worksheet Dim newRow As Long, i As Long, j As Long Set ws = Worksheets("Лист2") newRow = Application.WorksheetFunction.CountA(ws.Range("A:A")) + 1 With lbDays For i = 0 To lbDays.ListCount - 1 If .Selected(i) Then For j = 1 To .ColumnCount ws.Cells(newRow, j).Value = .List(i, j - 1) Next j newRow = newRow + 1 End If Next i End With End Sub
[/vba] Обратите внмимание, как Виктор в Вашей предыдущей теме нашел последнюю ячейку End(...).Row правильнее, чем CountA - последняя строка ищется независимо от того, есть ли незаполненные ячейки в середине данных столбца А
Так нужно? [vba]
Код
Private Sub btnOK_Click() Dim ws As Worksheet Dim newRow As Long, i As Long, j As Long Set ws = Worksheets("Лист2") newRow = Application.WorksheetFunction.CountA(ws.Range("A:A")) + 1 With lbDays For i = 0 To lbDays.ListCount - 1 If .Selected(i) Then For j = 1 To .ColumnCount ws.Cells(newRow, j).Value = .List(i, j - 1) Next j newRow = newRow + 1 End If Next i End With End Sub
[/vba] Обратите внмимание, как Виктор в Вашей предыдущей теме нашел последнюю ячейку End(...).Row правильнее, чем CountA - последняя строка ищется независимо от того, есть ли незаполненные ячейки в середине данных столбца А_Boroda_