我正在尝试更改单元格的颜色。我有一些代码可以阻止激活黑色背景的单元格。这很好用,但我想在按钮点击事件中将其中一些单元格的背景更改为红色。
单击该按钮时,我希望它周围的所有单元格变为红色。由于无法选择细胞,我无法做到这一点。如果我使用Range(“A1”)之类的东西。值=“Hi”(这是一个黑色背景的单元格),Hi会出现在那里,我想这是因为我没有激活单元格只是改变了它的值。
有没有办法从活动单元格偏移并更改其周围的单元格颜色而不激活/选择这些单元格?
Worksheet_SelectionChange中的代码是:
'Stops users selecting a Black cell. If they try they are returned to their previous cell
If Target.Cells(1, 1).Interior.ColorIndex = 1 Then
OldRange.Select
'MsgBox "H"
Else
Set OldRange = Target
End If
Button Click中的代码是:
If Range("AL7").Value = "Bomb" Then
MsgBox "BOOM, BANG, KABOOM!!"
ActiveCell.Interior.ColorIndex = 3
ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Select
ActiveCell.Interior.ColorIndex = 3
ActiveCell.Offset(rowOffset:=1, columnOffset:=0).Activate
ActiveCell.Interior.ColorIndex = 3
ActiveCell.Offset(rowOffset:=0, columnOffset:=-1).Activate
ActiveCell.Interior.ColorIndex = 3
ActiveCell.Offset(rowOffset:=0, columnOffset:=-1).Activate
ActiveCell.Interior.ColorIndex = 3
答案 0 :(得分:0)
您不必选择一个单元来更改它的属性,实际上这被认为是不好的做法,并且充满了许多人意想不到的后果。
相反,你可以这样做:
ActiveCell.Offset(rowOffset:=0, columnOffset:=1).Interior.ColorIndex = 3
让焦点留在你所在的牢房里。