【发布时间】:2015-04-25 07:16:32
【问题描述】:
我正在尝试在一组已使用的单元格周围动态应用边框。 column Range is (B7:E7)行数总是变化,所以代码需要是动态的。我下面的代码没有实现这一点:
Sub Borders()
Application.ScreenUpdating = False
Dim lngLstCol As Long, lngLstRow As Long
lngLstRow = ActiveSheet.UsedRange.Rows.Count
lngLstCol = ActiveSheet.UsedRange.Columns.Count
For Each rngCell In Range("B7:B" & lngLstRow)
If rngCell.Value > "" Then
r = rngCell.row
c = rngCell.Column
Range(Cells(r, c), Cells(r, lngLstCol)).Select
With Selection.Borders
.LineStyle = xlContinuous
.Weight = xlThin
.ColorIndex = xlAutomatic
End With
End If
Next
Application.ScreenUpdating = True
End Sub
【问题讨论】:
-
您的代码将边框应用于
B列为>""的每一行。你到底期待什么? -
我希望能够在 B7:C7 列到 lastrow 的已用单元格周围应用边界,所以我的代码是错误的,
-
您可以添加示例预期输出的图像吗?
-
此代码在所有单元格
B7周围设置边框,并按预期向右和向下移动.. -
@user3964075 例如,我想在 Range("B6:E12") 等范围内应用一个板。列范围不会改变它的 B6:E6,只是行数根据生成的数据而变化。所以它基本上是一个厚框边框。