首页 > 解决方案 > 每 x 秒更改 excel 单元格背景

问题描述

嗨,无论如何用公式每 x 秒更改一次单元格颜色?让我们说现在在 5 秒后变成黄色,然后再次重做这个任务

标签: excelcell

解决方案


这可以使用 VBA 来实现。

要让单元格每 5 秒从黄色变为白色闪烁,应将以下代码粘贴到新模块中:

Option Explicit
Dim RunTimer As Date

Sub ColorChange()
    RunTimer = Now + TimeValue("00:00:05")
    
    Application.OnTime RunTimer, "ColorChange"
    If Range("a1").Interior.Color = RGB(255, 255, 255) Then
        Range("a1").Interior.Color = RGB(255, 255, 0)
    Else
        Range("a1").Interior.Color = RGB(255, 255, 255)
    End If

End Sub

为了运行它,您可以从宏菜单启动它,或者将其设置为在您打开工作簿时自动启动。如果您想要后者,请确保将以下代码复制到工作簿代码部分:

Private Sub Workbook_Open()

Call ColorChange

End Sub

此外,为了停止此宏,您需要将以下代码粘贴到原始代码下,以便您在选择时停止代码。同样,您将能够通过宏菜单访问它以运行它。

Sub StopColor()

Application.OnTime RunTimer, "ColorChange", , False

End Sub

推荐阅读