我们有一个大型矩阵,行上是服务器列表,列上是人员列表。然后,如果人员有权访问服务器,我们会用 X 标记该列/行。这很简单。但随着矩阵的增长,快速找到有权访问的正确人员变得越来越困难。所以我想找到一种更容易使用的方法
在上面的例子中,我点击了“资源 B”行,并希望以某种方式突出显示所有带有“X”(用户 1、用户 2)的列。然后,如果我点击“资源 C”行,应该会突出显示“用户 1”。
答案1
尝试这个。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
lastCol = Cells(1, Columns.Count).End(xlToLeft).Column
For Each cell In Range(Cells(Target.Row, 1), Cells(Target.Row, lastCol))
If cell = "x" Then
cell.EntireColumn.Interior.Color = 65535
Else
cell.EntireColumn.Interior.Color = xlNone
End If
Next
End Sub
重要的:将宏插入所需的工作表对象中,而不是模块对象中。
否则将Worksheet_SelectionChange
不起作用。
答案2
看来这就是你所需要的: