Здравствуйте, уважаемые участники форума!
Необходимо скопировать данные с листа "подробно" на лист "Лист2" той же книги из столбцов B:E, AF:AH в A:G.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range, r As Range
Set rng = Intersect(Target, Range("AH3:AH" & Rows.Count))
If rng Is Nothing Then Exit Sub
For Each r In rng
If Not IsEmpty(r.Value) Then
r.Copy Destination:=Sheets("подробно").Range("B3:E")
r.Copy Destination:=Sheets("подробно").Range("AF3:AH")
End If
Next
Set rng = Nothing
End Sub
Вот этот код ищет последнюю строку (плавающую), насколько я понимаю, и работает, но частично: копируются только колонки с C по D, а нужно, чтобы также копировалась A, а также с AF по AH - в E-G. Итоговый диапазон копирования A-G на листе "Лист2" с листа "подробно".
Люди добрые, помогите, пожалуйста . Вот этот код нужно только немного доработать (а можно в него вписать правила по форматированию и как правильно?) Они есть во втором коде, но как их изменить под первый код?).
With Worksheets("Лист2").Range("B3") (?)
.PasteSpecial xlPasteColumnWidths ' ширина столбца'
.PasteSpecial xlPasteValues ' значения'
.PasteSpecial xlPasteFormats ' форматы'
.PasteSpecial xlPasteFormulasAndNumberFormats ' формулы'
' .....'
End With
Application.CutCopyMode = False
Как бы это правильно туда поставить? И какой диапазон тогда указывать?
P.s. Как видно, я совсем новичок в vba.
Необходимо скопировать данные с листа "подробно" на лист "Лист2" той же книги из столбцов B:E, AF:AH в A:G.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng As Range, r As Range
Set rng = Intersect(Target, Range("AH3:AH" & Rows.Count))
If rng Is Nothing Then Exit Sub
For Each r In rng
If Not IsEmpty(r.Value) Then
r.Copy Destination:=Sheets("подробно").Range("B3:E")
r.Copy Destination:=Sheets("подробно").Range("AF3:AH")
End If
Next
Set rng = Nothing
End Sub
Вот этот код ищет последнюю строку (плавающую), насколько я понимаю, и работает, но частично: копируются только колонки с C по D, а нужно, чтобы также копировалась A, а также с AF по AH - в E-G. Итоговый диапазон копирования A-G на листе "Лист2" с листа "подробно".
Люди добрые, помогите, пожалуйста . Вот этот код нужно только немного доработать (а можно в него вписать правила по форматированию и как правильно?) Они есть во втором коде, но как их изменить под первый код?).
With Worksheets("Лист2").Range("B3") (?)
.PasteSpecial xlPasteColumnWidths ' ширина столбца'
.PasteSpecial xlPasteValues ' значения'
.PasteSpecial xlPasteFormats ' форматы'
.PasteSpecial xlPasteFormulasAndNumberFormats ' формулы'
' .....'
End With
Application.CutCopyMode = False
Как бы это правильно туда поставить? И какой диапазон тогда указывать?
P.s. Как видно, я совсем новичок в vba.