اذهب الي المحتوي
أوفيسنا

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

قام بنشر

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

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

وعند إلانتهاء من إكمال الحلقة التكرارية يتوقف ( يتم التركيز ) على سجل جديد فارغ بنهاية النموذج

المطلوب  :

جعل الكود ينقل التركيز الى أول سجل بالنموذج بعد الانتهاء من عمله

        On Error Resume Next
        Me.Forme_Visitors2.SetFocus
        Forms![Forme_Fatora]![Forme_Visitors2]![PcDigtv2].SetFocus

        On Error GoTo 0
        DoCmd.GoToRecord , , acFirst
        
        For i = 0 To Me.Forme_Visitors2.Form.Recordset.RecordCount - 1
        
            If Not (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![PcDigtv2])) _
                And (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Kinship])) _
                Or (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![service])) _
                Or (Forms![Forme_Fatora]![Forme_Visitors2]![service] <= 5) _
                And (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Travel])) _
                Or (Forms![Forme_Fatora]![Forme_Visitors2]![service] <= 5) _
                And (IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Itinerary])) Then

        
             
                
                If IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Kinship]) Then
                 MsgBox "أدخل  هذا الحقل  !!!", 48, "تـنـبـيـه !"

                    Forms![Forme_Fatora]![Forme_Visitors2]![Kinship].SetFocus
                
                ElseIf IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![service]) Then
                 MsgBox "أدخل  هذا الحقل  !!!", 48, "تـنـبـيـه !"

                    Forms![Forme_Fatora]![Forme_Visitors2]![service].SetFocus
                
                ElseIf IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Travel]) Then
                 MsgBox "أدخل هذا الحقل  !!!", 48, "تـنـبـيـه !"

                    Forms![Forme_Fatora]![Forme_Visitors2]![Travel].SetFocus
                    
                ElseIf IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Itinerary]) Then
                MsgBox "أدخل  هذا الحقل  !!!", 48, "تـنـبـيـه !"
                   
                    Forms![Forme_Fatora]![Forme_Visitors2]![Itinerary].SetFocus

                End If  'IsNull
                
                Exit Sub
            
            End If  'IsNull(Forms![Forme_Fatora]![Forme_Visitors2]![Kinship])
        
        DoCmd.GoToRecord , , acNext

        Next i

    End If  'DCount

 

قام بنشر

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

 

واخيرا كاسر يعطينا سؤال سهل:smile:

هذا السطر الاخير في الكود
    End If  'DCount

اكتب وراه
    DoCmd.GoToRecord , , acfirst

 

جعفر

  • Like 1
قام بنشر
  في 7‏/12‏/2017 at 07:01, jjafferr said:

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

 

واخيرا كاسر يعطينا سؤال سهل:smile:

هذا السطر الاخير في الكود
    End If  'DCount

اكتب وراه
    DoCmd.GoToRecord , , acfirst

 

جعفر

Expand  

ههههههه

صار صعب

الكود أعلاه يتم تنفيذه عند التركيز على زر أمر

وعندما وضعت حسب ما أشرت

DoCmd.GoToRecord , , acfirst

يتوقف زر الأمر في حديث عند التركيز ولا يكمل باقي الكود والموجود في حدث عند النقر

قام بنشر
  في 7‏/12‏/2017 at 06:08, kaser906 said:

وعند إلانتهاء من إكمال الحلقة التكرارية

1. يتوقف ( يتم التركيز ) على سجل جديد فارغ بنهاية النموذج

جعل الكود

2. ينقل التركيز الى

3. أول سجل بالنموذج بعد الانتهاء من عمله

Expand  

 

1. انت تريد التركيز يذهب الى السجل الاول ، وهذه هي الطرق:


docmd.gotorecord,,acfirst

او
Me.Recordset.MoveFirst

او
Me.RecordsetClone.MoveFirst
Me.Bookmark = Me.RecordsetClone.Bookmark

.

2. بالنسبة الى الحقل/الكائن الذي سيكون عليه التركيز عندما يذهب الكود الى السجل الاول ، فيعتمد على الترتيب الذي انت وضعته ،

الصورة المرفقة هي اعدادات الحقل "state/province" ، وترتيبها للتركيز عليها هو 4 (في الواقع 5 ، لأن الاكسس يبدأ حسابه من الرقم 0) ، وكلمة Yes التي تحت الرقم تدل على انك تريد ان يتوقف المؤشر عليها عند ضغطك على زر الكيبورد Tab او Enter ،

هناك حالتين لا يتوقف عليها المؤشر ، اذا كتبت No في هذا الاعداد ، او كان الحقل/الكائن مخفي ،

لذلك ، فتأكد ان السجل الاول فيه حقل اول توقف

Control%20Properties%20and%20Why%20to%20

.

3. قد لا يكون المكان الصحيح لوضع هذا الكود في المكان الذي اخبرتك ، ولكن الكود صحيح ،

فأنظر اين تضعه في المكان الصحيح:smile:

 

جعفر

  • Like 1
قام بنشر

h

  في 7‏/12‏/2017 at 08:12, jjafferr said:

 

1. انت تريد التركيز يذهب الى السجل الاول ، وهذه هي الطرق:


docmd.gotorecord,,acfirst

او
Me.Recordset.MoveFirst

او
Me.RecordsetClone.MoveFirst
Me.Bookmark = Me.RecordsetClone.Bookmark

.

2. بالنسبة الى الحقل/الكائن الذي سيكون عليه التركيز عندما يذهب الكود الى السجل الاول ، فيعتمد على الترتيب الذي انت وضعته ،

الصورة المرفقة هي اعدادات الحقل "state/province" ، وترتيبها للتركيز عليها هو 4 (في الواقع 5 ، لأن الاكسس يبدأ حسابه من الرقم 0) ، وكلمة Yes التي تحت الرقم تدل على انك تريد ان يتوقف المؤشر عليها عند ضغطك على زر الكيبورد Tab او Enter ،

هناك حالتين لا يتوقف عليها المؤشر ، اذا كتبت No في هذا الاعداد ، او كان الحقل/الكائن مخفي ،

لذلك ، فتأكد ان السجل الاول فيه حقل اول توقف

Control%20Properties%20and%20Why%20to%20

.

3. قد لا يكون المكان الصحيح لوضع هذا الكود في المكان الذي اخبرتك ، ولكن الكود صحيح ،

فأنظر اين تضعه في المكان الصحيح:smile:

 

جعفر

Expand  

نفذت كل اللي ذكرت والاعدادات مظبوطه كما يجب في ترتيب الجدولة والحقل الأول في ترتيب الجدولة ظاهر

لو غيرت مكان الكود خارج هذا الحدث فسيتم نقل النركيز الى السجل الأول بالنموذج الرئيسي

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

على الفكرة المسألة مش مهمة الى هذه الدرجة

لكن لاحظت انه يجب ان انقر على زر  الأمر مرتين لكي يتم تنفيذ الحدث في عند النقر

طبعا هذا قبل ان اضع الكود الذي اشرت به علي

قام بنشر

ابش رايك ان تنقل الكود بالكامل ، بدل ما يكون على تركيز الزر ، اجعله على الضغط/النقر على الزر ، وبهذه الطريقة تتخلص من جميع المشاكل ،

نعم ما بيكون بالطريقة التي تريدها ، ولكن هذا الحال ، مو دائما تحصل على اللي تريد:smile:

 

بس بيصير عندك نقرة زر واحدة فقط:smile:

 

جعفر

  • Thanks 1
قام بنشر
  في 7‏/12‏/2017 at 16:12, jjafferr said:

ابش رايك ان تنقل الكود بالكامل ، بدل ما يكون على تركيز الزر ، اجعله على الضغط/النقر على الزر ، وبهذه الطريقة تتخلص من جميع المشاكل ،

نعم ما بيكون بالطريقة التي تريدها ، ولكن هذا الحال ، مو دائما تحصل على اللي تريد:smile:

 

بس بيصير عندك نقرة زر واحدة فقط:smile:

 

جعفر

Expand  

:clapping:

ضبط بعد نقل الكود الى المكان المشار إلية

الله يعطيك العافية

 

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