当工作表打开时,我在宏下运行.问题是每当我在单元格中更改值或执行任何事件时,宏都会再次启动.怎么预防呢?
Private Sub Worksheet_Calculate()
Application.EnableEvents = False
Dim i As Long
i = Application.WorksheetFunction.CountIf(Range([W2], Cells(Rows.Count, "W").End(xlUp)), "tak")
Worksheets("Arkusz1").Range("AZ1").Value = i
If Worksheets("Arkusz1").Range("AZ1").Value > 0 Then
MsgBox "Sa " & i & " wózki do przegl?du"
Else
MsgBox "Nie ma wózków do przegl?du"
End If
Application.EnableEvents = True
End Sub
Run Code Online (Sandbox Code Playgroud)
没有开放工作表(据我所知).如果要在切换到工作表时执行宏,请使用Worksheet_Activate事件Worksheet_Calculate.
您可能还需要添加类似的内容
If ActiveSheet.Name = "sheetnamehere" Then yourMacroHere
Run Code Online (Sandbox Code Playgroud)
Workbook_Open如果您希望在打开工作簿时工作表处于活动状态,则执行该事件.
我建议将代码移动到一个单独的宏,并从事件中调用该宏.
| 归档时间: |
|
| 查看次数: |
1097 次 |
| 最近记录: |