الاخوة الافاضل السلام عليكم ورحمة الله
اثناء تجوالي في المنتديات الاجنبية وجدة مجموعة من المكرو خاصة بتنظيم الوقت فاحببت ان اشارككم بها
1- اغلاق ملف الاكسل بعد وقت محدد : وهو ممتاز للملفات المشتركة والتي يتعامل بها اكثر من شخص او ان تحدد لنفسك وقت محدد للعمل
على ايت حال يعتبر هذا المكرو ميزه جيدة يمكن اضافتها لعدة استخدامات
المكرو :
Private Sub Workbook_Open()
Dim Start, Finish, TotalTime, TotalTimeInMinutes, TimeInMinutes
Application.DisplayAlerts = True
TimeInMinutes = 180 'Timer is set for 180 minutes; change as needed.
If TimeInMinutes > 5 Then
TotalTimeInMinutes = (TimeInMinutes * 60) - (5 * 60)
Start = Timer
Do While Timer < Start + TotalTimeInMinutes
DoEvents
Loop
Finish = Timer
TotalTime = Finish - Start
Application.DisplayAlerts = False
MsgBox "This file has been open for " & TotalTime / 60 & " minutes. You have 5 minutes to save before Excel closes."
End If
Start = Timer
Do While Timer < Start + (5 * 60)
DoEvents
Loop
Finish = Timer
TotalTime = Finish - Start
Application.DisplayAlerts = False
MsgBox "Excel will now close."
Application.Quit
End Sub
2- تشغيل المكرو اتماتيكين لمدة ثواني - دقائق - ساعات بعد تشغيل ملف الاكسل, وهو مفيد جدأ عند الحاجة لربطة مع مكرو اخر يتم تشغلة بعد فترة من الزمن مثلاً أعداد قالب اختبارات ويتم التنبيه عن الوقت المتبقي لنتهاء فترة الاختبار
ملاحضة يتم نسخ المكرو في ThisWorkbook لتفعيلة
لا يستفاد من هذا المكرو على حدة - يجب ربطة بمكرو اخر للاستفادة من وذلك بتغير Name_of_Macro الى اسم المكرو المراد تفعيلة
عند ربط وتفعيل المكرو يجب حفظ الملف واغلاقة ثم اعادة فتح الملف حيث انه سيبدء العد عند فتح الملف
ان الوقت المحدد لهذا المكرو للبدء هو 10 ثواني ولتغيره قم بادخال الوقت المطلوب في خانة 00:00:10
المكرو:
Private Sub Workbook_Open()
'Runs a macro 10 seconds after Excel is opened
Application.OnTime Now + TimeValue("00:00:10"), "Name_of_Macro"
End Sub
3- تشغيل المكرو في وقت محدد من اليوم مثلاً اساعة 4:43 عصراً
وهو مقارب للمكرو السابق ولكن يعمل في وقت محدد من اليوم
ملاحضة جميع الاعدادات السابقة لمكرو رقم 2 يجب تطبيقها لهذا المكرو بلأضافه الى انه سيعتمد على توقيت الساعة الموجودة في كمبيوترك
المكرو :
Private Sub Workbook_Open()
'Runs a macro at 4:30 PM
Application.OnTime TimeValue("16:30:00"), "Name_of_Macro"
End Sub
مع تمنياتي للجميع بتوفيق
اخوكم بوفيصل