我是VBA的新手。在Excel中,我有一个名为“有效”的定义范围,即B2:B10。当用户单击该范围内的单元格时,我希望单元格轮廓更改为红色。
)
答案 0 :(得分:0)
将它放在LookupLists代码部分(您可能已经这样做了):
Private Sub Worksheet_SelectionChange(ByVal target As Range)
Dim rng As Range
Set rng = Worksheets("LookupLists").Range("Efficient")
If Intersect(target, rng) Is Nothing Then Exit Sub
Application.EnableEvents = False
target.BorderAround ColorIndex:=3
Application.EnableEvents = True
End Sub
这将更改“单击”(即选中)的单元格的边框。请注意,这也会在该范围内的一组选定单元格周围绘制边框(例如,单击,按住并拖动鼠标),如果使用箭头键移动范围,也会为单元格着色 - 这可能不完全是您的'重新开始。
修改强>
如果您点击其他地方删除边框,则可以尝试此操作:
Private Sub Worksheet_SelectionChange(ByVal target As Range)
Dim rng As Range
Set rng = Worksheets("LookupLists").Range("Efficient")
Application.EnableEvents = False
If Intersect(target, rng) Is Nothing Then
rng.Borders.Color = xlNone
Else
target.BorderAround ColorIndex:=3
End If
Application.EnableEvents = True
End Sub
但这会删除每个选择更改的边框。除非你向上移动,否则它的效果将不会显着。