السلام عليكم ورحمة الله وبركاته
 
	كنت منذ فترة قدمت لحضراتكم موضوعا بعنوان : إغلاق آلى لملف اكسل إذا ترك بدون استخدام
 
	على الرابط التالى :                  http://www.officena.net/ib/index.php?showtopic=59908
 
	واليوم أعرض على حضراتكم موضوعا شبيها  كما يبدو من عنوان الموضوع : كيفية تشغيل كود ( أى كود ) إذا ترك ملف الاكسل بدون استخدام
 
	الطريقة :
 
	1-  ضع الكود التالى فى حدث الملف
 
Private Sub Workbook_SheetActivate(ByVal Sh As Object)
ResetTime  ' كود اعادة المدة كلما حدث تنشيط شيت
End Sub
Private Sub Workbook_SheetCalculate(ByVal Sh As Object)
ResetTime   ' كود اعادة المدة كلما حدث تغيير فى البيانات
End Sub
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
ResetTime  ' كود اعادة المدة كلما حدث تغيير فى شيت
End Sub
	ضع الكود التالى بمديول عادى
 
Public MyTime As Date
Sub Auto_Open()
MyTime = Now + TimeSerial(0, 0, 30) ' بداية عمل الكود  بعد فتح الملف
Application.OnTime MyTime, "MyMacro"
End Sub
Sub CancelOnTime()
    Application.OnTime MyTime, "MyMacro", , False
End Sub
Sub ResetTime()
    On Error Resume Next
    Application.OnTime EarliestTime:=MyTime, Procedure:="MyMacro", Schedule:=False
    MyTime = Now + TimeSerial(0, 1, 0)    ' المدة الزمنية التى يعمل بعدها كودك
    Application.OnTime EarliestTime:=MyTime, Procedure:="MyMacro"
    On Error GoTo 0
End Sub
Sub MyMacro()
 ' ضع كودك الذى تريد تشغيله اذا لم يكن الملف نشطا
 ' مثال
  Shell "C:\WINDOWS\system32\Bubbles.scr /S", vbMaximizedFocus
 
 
 
 '  انه كودك بالأمر التالى
  ResetTime
End Sub
	3 - احفظ الملف و أعد فتحه 
 
	طالما أنت شغال على الملف لن يعمل الكود اذا توقفت عن العمل ستبدأ الفترة الومنية التى يعمل بعدها كودك
 
	تحياتى لكم وأتمنى أن ينال الملف اعجابك
 
	المرفق :
 
	 
 
تشغيل آلى لكود إذا ترك الاكسل بدون استخدام.rar