मेरे पास एक कार्यपुस्तिका है जो एक एपीआई टाइमर द्वारा बंद ट्रिगर होने पर एक्सेल को क्रैश करता है।एपीआई टाइमर पर एक्सेल 2016 दुर्घटना वर्कबुक.क्लोस
संपादित करें: नीचे दिए गए लिंक में कार्यपुस्तिका में टाइमर और निकास मॉड्यूल के अलावा कुछ भी नहीं है और यह वही व्यवहार है, इसलिए यह सामग्री के साथ कोई समस्या नहीं है।
https://www.dropbox.com/s/x0xdwgj5h34ctdk/Book1.xlsm?dl=0
कार्यपुस्तिका के बाद एक्सेल दुर्घटनाओं बंद कर देता है कुछ सेकंड। मैंने टाइमर बंद करने की कोशिश की है, सभी शीट्स को अनदेखा कर रहा है, फॉर्म उतार रहा है ... सभी ऑब्जेक्ट Nothing
पर सेट हैं।
मैं जो कर रहा हूं वह Workbooks(ThisWorkbook.Name).Close SaveChanges:=True
है ?? !!
एक ही सब को उपयोगकर्ताफॉर्म से कोई समस्या नहीं है। एक्सेल क्रैश होने के बिना कार्यपुस्तिका बंद हो जाती है।
इसे कैसे ठीक करें?
Sub ApplicationExit()
' Call UnloadAllForms
' DoEvents
' Sleep 1000
' Call StopCloseTimer
'DoEvents
'If Application.Workbooks.Count = 1 Then
' Workbooks(ThisWorkbook.Name).Save
' Application.Quit
'Else
DoEvents
Workbooks(ThisWorkbook.Name).Close SaveChanges:=True
'End If
End Sub
टाइमर द्वारा ट्रिगर किया गया कोड है;
Sub TimerCalled()
If CloseTimerValue = "" Then Call Reset_CloseTimerValue
DoEvents
If basTimers.CloseTimerValue <= Now() And Not Unlocked Then Call ApplicationExit
On Error Resume Next 'In case sheet is protected
ThisWorkbook.Sheets("JobIndex").Range("CloseCount").Value = Format(Now() - CloseTimerValue, "hh:m:s")
End Sub
उपयोगकर्ता का कहना है; एक्सेल VBA में
CloseUp:
i = MsgBox("Close Project Register?", vbYesNo, MsgBoxTitle)
Select Case i
Case vbYes
Call ApplicationExit
Case vbNo
Workbooks(ThisWorkbook.Name).Save
End Select
application.ontime से एक्सेल इंस्टेंस को बंद करना और भी खराब है। एक्सेल को क्रैश करने के बजाय कई बार/बंद कर दिया जाएगा और इसे रोकने के लिए टास्क मैनेजर के माध्यम से मारने की आवश्यकता हो सकती है। –