Упростить код?
Добавлено: 22 апр 2009, 12:02
Подскажите, как упростить?
Код: Выделить всё
Sub CopyData()
Dim LastRow As Long, r As Long
Dim List As Worksheet
LastRow = Worksheets("Лист1").Range("A65536").End(xlUp).Row
For r = 1 To LastRow Step 4
s = (r +1) / 2
Set List= Worksheets("Лист1")
With Worksheets("Лист2")
.Cells(s, 1).Value = List.Cells(r, 1).Value
.Cells(s, 2).Value = List.Cells(r, 2).Value
.Cells(s, 3).Value = List.Cells(r, 3).Value
.Cells(s, 4).Value = List.Cells(r, 4).Value
.Cells(s, 5).Value = List.Cells(r, 5).Value
.Cells(s, 6).Value = List.Cells(r, 6).Value
.Cells(s, 7).Value = List.Cells(r, 7).Value
.Cells(s, 8).Value = List.Cells(r, 8).Value
.Cells(s, 9).Value = List.Cells(r, 9).Value
.Cells(s, 10).Value = List.Cells(r, 10).Value
.Cells(s, 11).Value = List.Cells(r, 11).Value
.Cells(s, 12).Value = List.Cells(r, 12).Value
.Cells(s, 13).Value = List.Cells(r, 13).Value
.Cells(s, 14).Value = List.Cells(r, 14).Value
.Cells(s, 15).Value = List.Cells(r, 15).Value
.Cells(s, 16).Value = List.Cells(r, 16).Value
.Cells(s + 1, 1).Value = List.Cells(r + 1, 1).Value
.Cells(s + 1, 2).Value = List.Cells(r + 1, 2).Value
.Cells(s + 1, 3).Value = List.Cells(r + 1, 3).Value
.Cells(s + 1, 4).Value = List.Cells(r + 1, 4).Value
.Cells(s + 1, 5).Value = List.Cells(r + 1, 5).Value
.Cells(s + 1, 6).Value = List.Cells(r + 1, 6).Value
.Cells(s + 1, 7).Value = List.Cells(r + 1, 7).Value
.Cells(s + 1, 8).Value = List.Cells(r + 1, 8).Value
.Cells(s + 1, 9).Value = List.Cells(r + 1, 9).Value
.Cells(s + 1, 10).Value = List.Cells(r + 1, 10).Value
.Cells(s + 1, 11).Value = List.Cells(r + 1, 11).Value
.Cells(s + 1, 12).Value = List.Cells(r + 1, 12).Value
.Cells(s + 1, 13).Value = List.Cells(r + 1, 13).Value
.Cells(s + 1, 14).Value = List.Cells(r + 1, 14).Value
.Cells(s + 1, 15).Value = List.Cells(r + 1, 15).Value
.Cells(s + 1, 16).Value = List.Cells(r + 1, 16).Value
End With
Next r
End Sub