在没有使用VBA的情况下,高亮度活动行/列在Excel中?

我想要实现的是突出显示活动行或列。我使用VBA解决方案,但每次使用Selection_change事件时,我都失去了撤消我工作表中任何更改的机会。

有没有办法在不使用VBA的情况下激活活动行/列?

最佳答案
我不认为没有使用VBA可以做到这一点,但是可以在不丢失你的撤消历史的情况下完成它:

在VBA中,将以下内容添加到工作表对象中:

Public SelectedRow as Integer
Public SelectedCol as Integer

Private Sub Worksheet_SelectionChange(ByVal Target as Range)
    SelectedRow = Target.Row
    SelectedCol = Target.Column
    Application.CalculateFull ''// this forces all formulas to update
End Sub

创建一个新的VBA模块并添加以下内容:

Public function HighlightSelection(ByVal Target as Range) as Boolean
    HighlightSelection = (Target.Row = Sheet1.SelectedRow) Or _
        (Target.Column = Sheet1.SelectedCol)
End Function

最后,使用条件格式来突出显示基于“HighlightSelection”公式的单元格:

转载注明原文:在没有使用VBA的情况下,高亮度活动行/列在Excel中? - 代码日志