Мой код должен копировать динамический набор данных из Sheet1 и Sheet2 в Sheet3 и 4 соответственно. После того, как копирование и форматирование завершено, мне нужно применить границы к динамическому диапазону.
Вот так выглядит мой скрипт
Sub transfer()
Dim Lastrow As Integer
Dim Lastrow1 As Integer
Dim row1 As Long
Dim row2 As Long
Dim range1 As Range
Dim range2 As Range
Lastrow = Worksheets("Sheet1").Cells(Rows.Count, 1).End(xlUp).row
Lastrow1 = Worksheets("Sheet3").Cells(Rows.Count, 1).End(xlUp).row
Debug.Print Lastrow
Debug.Print Lastrow1
Worksheets("Sheet1").Range("B2:G" & Lastrow).copy Worksheets("Sheet2").Range("B2")
Worksheets("Sheet3").Range("B2:H" & Lastrow1).copy Worksheets("Sheet4").Range("B2")
With Worksheets("Sheet2")
row1 = Worksheets("Sheet2").Cells(Rows.Count, 1).End(xlUp).row
Debug.Print row1
Set range1 = Worksheets("Sheet2").Range("B1:G" & row1)
With range1.Borders
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = 0
.TintAndShade = 0
End With
End With
With Worksheets("Sheet4")
row2 = Worksheets("Sheet4").Cells(Rows.Count, 1).End(xlUp).row
Debug.Print row2
Set range2 = Worksheets("Sheet4").Range("B1:H" & row2)
With range2.Borders
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = 0
.TintAndShade = 0
End With
End With
End Sub
Но границы появляются не только тогда, когда яв конкретном листе, хотя я указал имя листа. Кроме того, нарисованные границы противоречивы и не применяются ко всему диапазону для листа4
. Буду признателен за любую помощь. Спасибо.