اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الردود الموصى بها

قام بنشر (معدل)

السلام عليكم ورحمة الله وبركاته 

اساتذتي الاجلاء تحية طيبه ، وبعد 

ارجو التكرم بمساعدتي في عمل كود في الفورم يسمح بانتقال بين السجلات المعبأة اتومتيكيا كل 10 دقائق 

اذا ممكن حدوث هذا الامر   :eek2: 

( المثال = يوجد في الجدول حقول معباه لحصتان بمواد دراسية مختلفة ) 

( الفورم = الانتقال من الحصة الاولى للحصة الثانية اتومتيكيا بعد 10 دقائق ) 

 

وفقنا الله واياكم 

تجريبي .rar

تم تعديل بواسطه جمال السناني
قام بنشر

وعليكم السلام

 

هذا ممكن عن طريق التوقيت في النموذج ، ولكنه غير عملي (بالنسبة لي طبعا) ،

لكن السؤال ، ليش تريد عمل هذا الشئ؟ لأن ممكن تحصل على اللي تريده بطريقه ثانيه/افضل  :smile:

 

جعفر

قام بنشر

هلا استاذي الكريم   :smile:  :smile:  :smile:  :smile:

فقط لشي بسيط اريد الفورم ثابت كشاشة رئيسية والحصص ( كسجلات ) تتغير 

فمثلا الفورم يبدا بالحصة الاولى بعد مرور 30 دقيقة تنتهي الاولى عند بداية الحصة الثانية يتغير السجل في نفس الفورم ( الشاشة الرئيسية ) الى الحصة الثانية وهكذا حتى الحصة الثامنة 

قام بنشر

بعد اذن الاستاذ جعفر ! والله جهزت الحل قبل اشوف ردكم !! ولكم اجمل تحية

 

ضع 600000 عند خاصية الفاصل الزمني للنموذج

وهذا الكود عند الحدث عند عداد الوقت للنموذج

مع ملاحظة انه تم اضافة عند الوصول لاخر سجل يعود مرة اخرى لاول سجل

Private Sub Form_Timer()
If CurrentRecord = Me.RecordsetClone.RecordCount Then DoCmd.GoToRecord , , acFirst: Exit Sub
DoCmd.GoToRecord , , acNext
End Sub

بالتوفيق

  • Like 2
قام بنشر (معدل)

بعد اذن الاستاذ جعفر ! والله جهزت الحل قبل اشوف ردكم !! ولكم اجمل تحية

 

ضع 600000 عند خاصية الفاصل الزمني للنموذج

وهذا الكود عند الحدث عند عداد الوقت للنموذج

مع ملاحظة انه تم اضافة عند الوصول لاخر سجل يعود مرة اخرى لاول سجل

 

شكرا أخوي رمهان  :smile:

بس بعد ماعرفنا السبب ، في اعتقادي انه من الافضل ان نقارن الساعة قبل الانتقال الى السجل التالي ، وخصوصا اذا بالغلط تم تشغيل البرنامج في الوقت الغير صحيح ، فالطلبة بتستانس ، كما ان البرنامج لن يعطي نتائج صحيحة إلا اذ تم تشغيله في الوقت الصح ،

بينما بطريقتي ، فالحصص ستكون مضبوطة  :smile:

 

يعني الاخ جمال لازم يعطينا توقيت بداية كل حصة.

 

فيك الخير أخوي رمهان في عمل فكرتي ، إلا اذا عندك او عند الاخ جمال فكرة اخرى  :smile:

 

 

جعفر

تم تعديل بواسطه jjafferr
  • Like 1
قام بنشر (معدل)

معذرة استاذي جعفر  كنت مفكر اعطيك التوقيت قبل لا تسألني  :biggrin2:  :biggrin2:  :biggrin2:

و مثل ما تفضلت ربط الانتقال بالتوقيت الزمني ( الساعة )

وانا افضل ان يكون فتح البرنامج ( الفورم ) اي الشاشة الرئيسية على توقيت النظام فيظهر الحصة عند ذلك التوقيت 

 

والف شكر للاستاذ الفاضل  ( رمهان) على مشاركته وتفضله بالمساعدة 

 

التوقيت المفروض ان تبدا الحصة الاولى عند الساعة 7:20 صباحا 

وتنتهي عند الساعة 8  

الحصة الثانية تبدأ 8:02 وتنتهي عند الساعة 8:42

تم تعديل بواسطه جمال السناني
قام بنشر

الخير فيك اخوي جعفر

والله انا جاوبت على قد السؤال !! فاحيانا الاخ السائل يطرح سؤالا بمثابة مفتاح حل لعمل اخر لديه !  وكما ذكرت الحل جاهز ولم ارى فكرتكم الا عند محاولة رفع الحل !

والميدان لك اخي جعفر ! 

 

بالتوفيق

قام بنشر

السلام عليكم

لماذا لا يكون هناك جدول للحص يمكن التحكم به والكود ياخدذ بياناته من هذا الجدول 

فعند تغيير مواعيد الحصص لاى سبب لا يتم تغيير الكود

  • Like 1
قام بنشر

السلام عليكم

لماذا لا يكون هناك جدول للحص يمكن التحكم به والكود ياخدذ بياناته من هذا الجدول 

فعند تغيير مواعيد الحصص لاى سبب لا يتم تغيير الكود

 

هذا بالضبط اللي اعمله الان  :smile:

شكرا لك أخي أبوآلآء  :smile:

 

 

جعفر

  • Like 1
قام بنشر

تفضل  :smile:

 

post-142414-0-23132900-1430167078_thumb.

 

 

1. التوقيت: البرنامج يفحص وقت الكمبيوتر كل دقيقة ، 

2. هذا هو كود الفحص:


Private Sub Form_Timer()

    Set rst = Me.RecordsetClone
    rst.MoveLast: rst.MoveFirst
    RC = rst.RecordCount
    
    For i = 1 To RC
    'Debug.Print Format(Now, "hh:mm") & vbCrLf & Format(rst!Class_Time_From, "hh:mm") & vbCrLf & Format(rst!Class_Time_To, "hh:mm") & vbCrLf
        
        'compare the timer with the Class_Time
        If Format(Now, "hh:mm") >= Format(rst!Class_Time_From, "hh:mm") And Format(Now, "hh:mm") <= Format(rst!Class_Time_To, "hh:mm") Then
            'Debug.Print "I am in"
            
            rst.FindFirst "[Class_Number]=" & rst!Class_Number
            Me.Bookmark = rst.Bookmark
            Exit Sub
            
        End If
    

        rst.MoveNext
    Next i
Debug.Print "------"
End Sub

3. اضفت 3 حقول في الجدول:

Class_Number: لرقم كل حصة ، ومافي داعي لها ، لكنها لتسهيل الشغل (يعني بالعربي ، انا حطيتها ، وبعدين شفت مافي داعي لها ، بس كنت كتبت الكود ومستكاود اغيره  :smile: ) ،

Class_Time_From: البرنامج يفحص الوقت "من" و "الى" ، وحسب التجربة ، يفضل ان يكون الوقت بينهم على الاقل 3 دقائق ،

Class_Time_To:

 

 

جعفر

 

 

60.تجريبي.mdb.zip

  • Like 3
قام بنشر

تسلم يا استاذي الفاضل وانار الله قلبك وزادك علما 

 

ووفقنا الله واياك لما يحب ويرضى 

 

حياك الله  :smile:

 

للعلم ، انا قلت:

 

 

يفضل ان يكون الوقت بينهم على الاقل 3 دقائق

 

وفي الكود استخدمت >= و <=

يعني في مقارنتي للوقت ، قلت الوقت اكبر من او بساوي ، وللقيمة الثانية قلت اصغر من او يساوي ،

والسبب اني ما استخدمت = فقط هو:

ان البرنامج عندما يقضي 60 ثانية ويكون صاير وقت مراجعة وقت الكمبيوتر ،

فإن البرنامج يطلب من CPU الكمبيوتر ان ينفذ الى المعادلة ،

وفي الكثير من الاوقات يكون CPU الكمبيوتر مشغولا في تنفيذ اوامر اخرى (هو دائما مشغول في تنفيذ الاوامر ، هذا شغله  :smile: ) ،

لذلك ، فان CPU الكمبيوتر قد يتأخر بعض الوقت في تنفيذ الامر ، وبهذا تكون اجزاء من الثانية قد فاتت ، ويكون وقت المقارنة غير عن الذي كان  :smile:

 

جعفر

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information