![](/img/trans.png)
[英]Add borders in a used cell range (including empty/blank cells) in VBA
[英]Including the cell borders in a vba script for dynamic range
我的代碼應該將動態數據集從 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
但是即使我指定了工作表名稱,只有當我在特定工作表中時才會出現邊框。 此外,繪制的邊框不一致,並且未應用於 sheet4 的整個范圍
將不勝感激任何幫助。 謝謝。
您可能正在嘗試做這樣的事情(工作表的所有實例都需要限定)
With Worksheets("Sheet4")
row2 = .Cells(.Rows.Count, 1).End(xlUp).row
Set range2 = .Range("B1:H" & row2)
With range2.Borders
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = 0
.TintAndShade = 0
End With
End With
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.