我有一個奇怪的問題,我放在一起工作的宏。Excel宏導致文件重新打開
Backstory,我基本上設計了一個宏,在X時間後打開後關閉受保護的工作簿。它是一個共享文檔,當人們打開它時,他們經常會忘記關閉文檔,鎖定文檔以使其他人無法使用它。
所以我花了一些其他的宏來創建一個計時器。
Sub Start_Timer()
'BASIC UP COUNTER
Application.OnTime Now() + TimeValue("00:00:01"), "CheckStatus"
End Sub
Sub CheckStatus()
Dim ws As Worksheet
For Each ws In Worksheets
If ws.Range("IV1").Value > 60 Then
'IF IDLE LONGER THAN VALUE ABOVE, RUN THE FOLLOWING
Application.DisplayAlerts = False 'WORKS TO DISABLE ALERT PROMPT
ThisWorkbook.Close (False) 'CLOSE FILE WITHOUT SAVING
Application.Quit
Application.DisplayAlerts = True 'RESETS DISPLAY ALERTS
End Sub
Else
'ADD 1 TO COUNTER
ws.Range("IV1").Value = ws.Range("IV1").Value + 1
End If
Next
Start_Timer
End Sub
中的ThisWorkbook
Private Sub Workbook_Open()
Dim ws As Worksheet
MsgBox ("This Worksheet has a 15 min timer")
Start_Timer
For Each ws In Worksheets
'Columns("IV:IV").Hidden = True
ws.Range("IV1").Value = 1
Next
End Sub
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
Dim ws As Worksheet
For Each ws In Worksheets
ts.Range("IV1").Value = 1
Next
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayAlerts = False 'WORKS TO DISABLE ALERT PROMPT
ThisWorkbook.Close (False) 'CLOSE FILE WITHOUT SAVING
Application.Quit
Application.DisplayAlerts = True 'RESETS DISPLAY ALERTS
End Sub
爲它工作的大部分。但是,我寧願消除像「Application.Quit」。我遇到的問題是,當我刪除該行時,手動關閉它後立即重新打開工作簿,或嘗試手動退出Excel。
我認爲它可能需要不斷改變1單元格的值(遠遠沒有人看到它)並退出而不保存。
任何人都可以幫助我嗎?由於
任何人都知道如何檢查我關閉文件後會發生什麼? 我嘗試斷點,但它們在文件關閉後被擦除,所以我不知道它關閉後會發生什麼。 – ProjectPokket 2013-03-26 15:22:35