
您好,我正在尋找 VBA 程式碼,以便從單擊按鈕後每 5 秒使用 VBA 更改 Excel 中形狀的顏色。我的形狀的名稱是「矩形 1」。
答案1
指定要運行的按鈕啟動定時器:
Public RunWhen As Double
Public Const cRunIntervalSeconds = 5
Public Const cRunWhat = "qwerty"
Sub StartTimer()
RunWhen = Now + TimeSerial(0, 0, cRunIntervalSeconds)
Application.OnTime earliesttime:=RunWhen, procedure:=cRunWhat, _
schedule:=True
End Sub
Sub StopTimer()
On Error Resume Next
Application.OnTime earliesttime:=RunWhen, _
procedure:=cRunWhat, schedule:=False
End Sub
Sub qwerty()
Dim s As Shape
Set s = ActiveSheet.Shapes("Rectangle 1")
s.Fill.ForeColor.SchemeColor = Application.WorksheetFunction.RandBetween(1, 20)
Call StartTimer
End Sub