当细胞通过公式改变时突出显示细胞

时间:2017-01-18 04:01:25

标签: excel vba excel-vba

我想在Excel上创建一个宏,以便在特定单元格中的日期发生变化时突出显示一系列单元格。单元格从Bloomberg(BDP公式)中提取日期信息,工作簿每天刷新。

我尝试过这个解决方案:

Private Sub Worksheet_Change(ByVal Target As Range)

https://www.thespreadsheetguru.com/blog/trigger-your-vba-macros-to-run-based-on-specific-cell-value-change)。

但是,它仅在单元格中的公式更改时有效,而不是在刷新时单元格自动更新日期信息时。

我的问题有一个简单的解决方案吗?

1 个答案:

答案 0 :(得分:3)

如果您想要检测的只是一个单元格,那么解决方案可能很简单。将Worksheet_Calculate事件放在包含此单元格的工作表中:

Private Sub Worksheet_Calculate()
     Static oldVal As Variant
     If Me.Range("A1").Value <> oldVal Then
        Me.Range("A2:C4").Interior.ColorIndex = 6
    End If
    oldVal = Me.Range("A1").Value
End Sub

这假设您要检测单元格A1中的更改,并且您要突出显示的范围是A2:C4。根据您的需要调整这些范围。