我有一個帶有 3 個分步按鈕的互動式作業簿,因此用戶可以生成報告。我希望第二個宏檢查第一個宏是否已運行,如果沒有,請使用 Masgbox 警告用戶先運行它。
有沒有辦法確定是否運行了宏?也許在前 2 個宏的末尾放置一個呼叫,其中公共子將 1 添加到“計數器”變數?
例如:
宏 2 檢查計數器是否 = 1,宏 3 檢查計數器是否 = 2
提前致謝。
uj5u.com熱心網友回復:
按順序運行宏
Public RunChecker As Long
Sub Macro1()
Select Case RunChecker
Case 1
MsgBox "You already ran Macro1. To continue, run Macro2.", vbExclamation
Exit Sub
Case 2
MsgBox "To continue, run Macro3.", vbCritical
Exit Sub
End Select
' Your code, e.g.:
MsgBox "Running1", vbInformation
RunChecker = 1
End Sub
Sub Macro2()
Select Case RunChecker
Case 0
MsgBox "You need to run Macro1 first.", vbCritical
Exit Sub
Case 2
MsgBox "You already ran Macro2. To continue, run Macro3.", vbExclamation
Exit Sub
End Select
' Your code, e.g.:
MsgBox "Running2", vbInformation
RunChecker = 2
End Sub
Sub Macro3()
Select Case RunChecker
Case 0
MsgBox "You already finished. To start again, run Macro1.", vbExclamation
Exit Sub
Case 1
MsgBox "You need to run Macro2 first.", vbCritical
Exit Sub
End Select
' Your code, e.g.:
MsgBox "Running3", vbInformation
RunChecker = 0
End Sub
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/470578.html
