PDA

View Full Version : اجرای یک تابع در یک ساعت مشخص



Naghibi
پنج شنبه 18 آبان 1391, 08:36 صبح
با سلام خدمت همه دوستان
من می خوام در پروژه ام در یک ساعت مشخصی یک تابع فراخوانی و اجرا شود. استفاده ار تایمر برای مقایسه زمان هم ایده خوبی نیست چون خیلی سربار داره. یک تابع application.OnTime هم هست ولی تو VBA کار میکنه.:ناراحت: خیلی جستجو کردم ولی راه حلی پیدا نکردم!
کسی از دوستان میتونه منو راهنمایی کنه؟ شدیدا به همفکری تون نیاز دارم.

m2011kh
پنج شنبه 18 آبان 1391, 09:43 صبح
سلام دوست عزیز
فرمتو Hide کن بعدشم یه تایمر قرار بده.
زمانو با تابع Time دریافت کن.
زمانو با زمانی که دلخواهت هست مقایسه کن اگه مساوی بود تابعو فراخان کن و تایمرو غیر فعال کن.
به همین سادگی
اینم یه نمونه کد:
Private sub Timer1_Timer()
Dim a as date
a = time
if a = 12:00 PM then
call M
end if
end sub
اگه سوالی پیش اومد بگین من یا دوستان راهنمایی کنم

Naghibi
پنج شنبه 18 آبان 1391, 10:24 صبح
ممنون از راهنمایی تون
البته من توی جستجوهام به این راه حل رسیدم اما فکر کنم تایمر خیلی راه حل مناسبی نیست!! چون در پروژه ای که دارم زمان اجرای تابع معلوم نیست و به وسیله کاربر تعریف میشه و ممکنه یک زمان دور باشه. این یعنی یک تایمر یک بازه خیلی طولانی رو چک کنه تا به اون زمان خاص برسه.
من دنبال راه حلی هستم که سر همون زمان خاص تابع اجرا بشه. شما به Application.OnTime کار کردین؟

m2011kh
پنج شنبه 18 آبان 1391, 10:32 صبح
نه متأسفانه.
ولی یه تایمر اصلا برای سیستم سنگین نیست و تا جاییم که من میدونم ابزاری که برای کنترل زمان هست هم تو کارشون از تایمر استفاده میکنن.
چون چکی که تایمر شما انجام میده فقط مقایسه دو عدده وو کد های داخل شرط اجرا نمیشن استفاده از تایمر بی درد سر ترین کاره و برای سیستم هم مشکلی پیش نخواهد اومد چون تایمر کلا چند بایت از رمو برای هر بار مقایسه اش اشغال میکنه که حجم خیلی کمیه و مشکلی نداره.