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

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

قام بنشر
58 دقائق مضت, husseinharby said:

السلام عليكم

 

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

بما أنك تريد الفلترة على فلترة أخرى أو بدونها . خطر ببالي فكرة كالآتي ، لمنع التكرار في الحدثين لمربعي النص ، قمت بدمج الفكرة في دالة استعلام بسيط ، واستخدام الدالة Like ليكون البحث والفلترة حتى لو بجزء مطابق من النص :-

Private Sub ApplyFilter()
    Dim filterCondition As String
    filterCondition = ""
    
    If Nz(Me.Combo7, "") <> "" Then
        filterCondition = "[namee] Like '*" & Me.Combo7 & "*'"
    End If
    
    If Nz(Me.Text9, "") <> "" Then
        If filterCondition <> "" Then filterCondition = filterCondition & " AND "
        filterCondition = filterCondition & "[town] Like '*" & Me.Text9 & "*'"
    End If
    
    Me.Filter = filterCondition
    Me.FilterOn = (filterCondition <> "")
    Me.Requery
End Sub

وبالتالي ، للحدثين بعد التحديث لمربعي النص ، استدعيها نفسها بهذا الشكل :-

Private Sub Combo7_AfterUpdate()
    ApplyFilter
End Sub

Private Sub Text9_AfterUpdate()
    ApplyFilter
End Sub

 

وكإضافة ، قمت بإنشاء زر لإلغاء الفلترة وعرض السجلات كاملة . من خلال الزر :-

Private Sub Command20_Click()
    Me.Combo7 = Null
    Me.Text9 = Null
    Me.FilterOn = False
    Me.Requery
End Sub

 

ملفك بعد التطبيق :-

Database6.zip

  • Thanks 1
قام بنشر

شكرا استاذي الفاضل هذا هو المطلوب 

لكن هل من طريقة مبسطة اكثر لأنني اجد الكود معقد بعض الشئ 

لأنني سوف احتاج استخدامه في اكثر من نموذج لدي 

انشئ حساب جديد او قم بتسجيل دخولك لتتمكن من اضافه تعليق جديد

يجب ان تكون عضوا لدينا لتتمكن من التعليق

انشئ حساب جديد

سجل حسابك الجديد لدينا في الموقع بمنتهي السهوله .

سجل حساب جديد

تسجيل دخول

هل تمتلك حساب بالفعل ؟ سجل دخولك من هنا.

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

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

Important Information