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

تشغيل استعلام بشرط أن يكون النموذج مفتوح


hougar
إذهب إلى أفضل إجابة Solved by Barna,

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

السلام عليكم

أريد انشاء زر أمر لتشغيل استعلامين َQ1 Q2 يعملان على نموذجين مختلفين F1 F2 حيث عندما يكون النموذج  F1 مفتوح يشتغل الاستعلام Q1  وعندما F2 يكون مفتوح يشتغل الاستعلام Q2 

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

أتمنى أن المطلوب واضح

رابط هذا التعليق
شارك

  • أفضل إجابة
52 دقائق مضت, hougar said:

السلام عليكم

أريد انشاء زر أمر لتشغيل استعلامين َQ1 Q2 يعملان على نموذجين مختلفين F1 F2 حيث عندما يكون النموذج  F1 مفتوح يشتغل الاستعلام Q1  وعندما F2 يكون مفتوح يشتغل الاستعلام Q2 

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

أتمنى أن المطلوب واضح

استخدم هذا الكود مع تعديل مكان الرسائل يالاستعلام المطلوب .....

With Application.Forms
        For I = .Count - 1 To 0 Step -1
           With .Item(I)
               
               If .Name <> "Main_Form" And .Name = "F1" Then
               MsgBox .Name
               ElseIf .Name <> "Main_Form" And .Name = "F2" Then
               MsgBox .Name
               End If
           End With
       Next I
End With

 

  • Like 2
رابط هذا التعليق
شارك

مشاركه مع اخى واستاذى العزيز محمد

7 دقائق مضت, hougar said:

هل استبدل الرسائل بامر الاستعلام  بهذه الطريقة

DoCmd.OpenQuery "Q2" .Name

أم هكذا

Q2 .Name

أعتذر لأنني جربت الكود ولم يعمل معي

استبدل الرسائل بـ

DoCmd.OpenQuery "Q2"

فقط

بالتوفيق

  • Like 1
رابط هذا التعليق
شارك

2 ساعات مضت, Barna said:
With Application.Forms
        For I = .Count - 1 To 0 Step -1
           With .Item(I)
               
               If .Name <> "Main_Form" And .Name = "F1" Then
               MsgBox .Name
               ElseIf .Name <> "Main_Form" And .Name = "F2" Then
               MsgBox .Name
               End If
           End With
       Next I
End With

لقد قمت بكتالة الكود ولم ينفع حيث هل هناك خطأ في استعمال الكود

 

Private Sub Command3_Click()
On Error Resume Next
With Application.Forms
        For i = .count - 1 To 0 Step -1
           With .Item(i)
            If .Name <> "Main_Form" And .Name = "F1" Then
               DoCmd.OpenQuery "Q1"
               ElseIf .Name <> "Main_Form" And .Name = "F2" Then
               DoCmd.OpenQuery "Q2"
               End If
           End With
       Next i
End With
DoCmd.Close
DoCmd.RefreshRecord
End Sub

تم تعديل بواسطه hougar
رابط هذا التعليق
شارك

1 ساعه مضت, hougar said:

قد قمت بكتالة الكود ولم ينفع حيث هل هناك خطأ في استعمال الكود

السلام عليكم ..

قم بتعريف المتغير Dim i As Integer

قم بوضع DoCmd.Requery

بدلا من DoCmd.RefreshRecord

 

 

 

  • Thanks 1
رابط هذا التعليق
شارك

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