我有一個問題,我不知道它是否有答案。
我想做的是在一整天內跟蹤全域變數中宏的使用情況。我希望這個宏每天只能運行一次。我選擇在早上、中午或晚上運行它。
例如:
今天我們在 2022 年 1 月 13 日。早上我運行了這個宏并關閉了作業簿。我希望在 14 號(不同的日子)之前不能運行這個宏,即使我在 13 號下午重新打開作業簿,我按下宏按鈕它也不會運行。
所以我希望這個宏檢查它今天是否運行,然后如果答案是肯定不運行,但如果答案是否運行。這可以做到嗎?我考慮過創建一個全域變數 was_run,但是即使作業簿關閉并重新打開,我如何存盤它的值?這可能嗎 ?
謝謝您的幫助 !
uj5u.com熱心網友回復:
請嘗試下一個方法:
Sub myMacroRunningOnlyOncePerDay()
Const myApp As String = "My Daily Variable", Sett As String = "Settings"
Const strDate As String = "myDailyValue"
Dim RegValue As String, NoRun As Boolean
RegValue = GetSetting(myApp, Sett, strDate, "No value")
If RegValue <> "No value" Then
If IsNumeric(RegValue) Then
If CLng(RegValue) = CLng(Date) Then NoRun = True
End If
End If
If NoRun Then Exit Sub
SaveSetting myApp, Sett, strDate, CStr(CLng(Date))
MsgBox "It runs..."
End Sub
Registry將常量(鍵)放在模塊頂部(在宣告區域中)應該很好。通過這種方式,您可以從不同的 Subs 中使用它們。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/410263.html
標籤:
