Sma*_*EGA 0 excel vba excel-vba
我有一个excel单元格,其值每分钟更新一次.
我需要的是一个警告信息框; 而那个单元格值移动到特定时间.
假设一个单元格的值为10:
如果它在一分钟内达到7,那么我需要一个消息框来提醒它.
如果它在一分钟内没有达到7,那么我不需要任何警报.
请帮我写一个宏.
在ThisWorkBook的VBA编辑器中,您可以编写以下代码
Dim WithEvents SheetToWatch As Worksheet
Private Sub SheetToWatch_Change(ByVal Target As Range)
If Target.Address = "$A$2" Then
If Target.Value = 7 Then
MsgBox "changed to 7"
End If
End If
End Sub
Private Sub Workbook_Open()
Set SheetToWatch = Sheets("Sheet1")
End Sub
Run Code Online (Sandbox Code Playgroud)
基本上,代码SheetToWatch在工作簿打开时将Sheet1的引用设置为变量.使用声明变量WithEvents可以捕获事件.
我正在使用Change工作表的事件并检查更改的单元格是否为A2.如果是这样,我正在检查或比较值7(它可以是动态的,取决于你想如何处理它).
看看这是否有帮助.