如何执行 Excel 单元格引用其先前的值并根据新值更改单元格颜色

如何执行 Excel 单元格引用其先前的值并根据新值更改单元格颜色

我的电子表格正在监控 CoinMarketCap 的价格,并每分钟动态更新我当前的投资组合。这个想法是,如果值低于、大于或等于之前的状态,则更改特定单元格的颜色:等于 = 黄色,大于 = 绿色,小于 = 红色。根据给定的 Excel 条件格式规则,无法执行此操作。有人可以帮忙吗?有现有的 VBA 代码可用吗?或示例

提前感谢您的帮助:-) Excel 2016 Jacqu

答案1

在 VB 编辑器窗口中双击获取硬币市场更新的工作表并粘贴此 VB 脚本。

我假设您在 A 列中获取更新。如果不同,请将第 6 行中的列名称替换为其他。

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim newVal As Variant

    If Target.Count > 1 Then
        Exit Sub
    End If

    If Intersect(Range("A:A"), Target) Is Nothing Then
        Exit Sub
    End If

    Application.EnableEvents = False
    Application.ScreenUpdating = False

    newVal = Target.Value

    Application.Undo

    Target.Offset(0, 1).Value = Target.Value

    Target.Value = newVal

    Application.ScreenUpdating = True
    Application.EnableEvents = True
End Sub

笔记, Excel 一旦更新 A 列中的值,您就会获得相邻列中的先前值。

请这样做,

  • 选择整个 A 列或所需的行。
  • 单击条件格式命令。
  • 然后点击“突出显示单元格规则”。

然后按照**等于,大于和小于条件逐一格式化。

请记住,格式化时仅选择单元格 B2 进行比较。

在此处输入图片描述

相关内容