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

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

قام بنشر

وعليكم السلام اختي:smile:

 

كود البحث اصبح:


Private Sub بحث_Click()
On Error Resume Next

    Dim ctl As Control
    Dim Argcount As Integer
    Dim str As String

    Argcount = 0
    MyCriteria = ""
    For Each ctl In Me.Controls
        If (ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Or ctl.ControlType = acCheckBox) And ctl.Tag <> "" Then
            If ctl.Name <> "Date_From" And ctl.Name <> "Date_To" Then
                AddToWhere ctl.Tag, ctl.Value, "[" & ctl.Name & "]", MyCriteria, Argcount
            End If
        End If
    Next ctl

    If Len(Me.Date_From & "") <> 0 And Len(Me.Date_To & "") <> 0 Then
        MyCriteria = MyCriteria & " And [Date_BR] between #" & Me.Date_From & "# And #" & Me.Date_To & "#"
    End If
    
    'Debug.Print MyCriteria
    
    myStr = "select * from S_NAMES where " & MyCriteria
    Me.S_NAME.Form.RecordSource = myStr
    Me.Requery
    
End Sub

.

جعفر

566.Employees.mdb.zip

  • Like 1
قام بنشر

السلام عليكم اخي أبونادر:smile:

 

البحث السابق كان لجميع الحقول ،

والبحث الجديد يجب ان يكون لجميع الحقول و بين التاريخين ،

والظاهر انك نسيت البحث في الحقول ، وعملت البحث بين تاريخين فقط:smile:

 

جعفر

  • Like 2
قام بنشر
9 دقائق مضت, jjafferr said:

السلام عليكم اخي أبونادر:smile:

 

البحث السابق كان لجميع الحقول ،

والبحث الجديد يجب ان يكون لجميع الحقول و بين التاريخين ،

والظاهر انك نسيت البحث في الحقول ، وعملت البحث بين تاريخين فقط:smile:

 

جعفر

أشكرك اخى جعفر

انت دائما رائع في البرمجة

 

قام بنشر
9 دقائق مضت, jjafferr said:

:rol:

أخى جعفر  لا يزال لا يبحث :blink:

مثلا عند أدخال من  تاريخ 01/01/2016 إلى تاريخ  05/01/2016

لا يعمل تصفية للبيانات

لا اعلم المشكلة

 

قام بنشر

أختي

 

الظاهر انك بحثتي بالتاريخ فقط!!

على العموم ، هذا الكود المعدل يعمل للبحثين معا ، او اي بحث مستقل (الحقول او التاريخ):


Private Sub بحث_Click()
On Error Resume Next

    Dim ctl As Control
    Dim Argcount As Integer
    Dim str As String

    Argcount = 0
    MyCriteria = ""
    For Each ctl In Me.Controls
        If (ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Or ctl.ControlType = acCheckBox) And ctl.Tag <> "" Then
            If ctl.Name <> "Date_From" And ctl.Name <> "Date_To" Then
                AddToWhere ctl.Tag, ctl.Value, "[" & ctl.Name & "]", MyCriteria, Argcount
            End If
        End If
    Next ctl

    If Len(Me.Date_From & "") <> 0 And Len(Me.Date_To & "") <> 0 Then
        If Len(MyCriteria & "") <> 0 Then
            MyCriteria = MyCriteria & " And "
        End If
        MyCriteria = MyCriteria & " [Date_BR] between #" & Me.Date_From & "# And #" & Me.Date_To & "#"
    End If
    
    'Debug.Print MyCriteria
    
    myStr = "select * from S_NAMES where " & MyCriteria
    Me.S_NAME.Form.RecordSource = myStr
    Me.Requery
    
End Sub

 

جعفر

566.Employees.mdb.zip

  • Like 1
قام بنشر
17 دقائق مضت, jjafferr said:

أختي

 

الظاهر انك بحثتي بالتاريخ فقط!!

على العموم ، هذا الكود المعدل يعمل للبحثين معا ، او اي بحث مستقل (الحقول او التاريخ):



Private Sub بحث_Click()
On Error Resume Next

    Dim ctl As Control
    Dim Argcount As Integer
    Dim str As String

    Argcount = 0
    MyCriteria = ""
    For Each ctl In Me.Controls
        If (ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Or ctl.ControlType = acCheckBox) And ctl.Tag <> "" Then
            If ctl.Name <> "Date_From" And ctl.Name <> "Date_To" Then
                AddToWhere ctl.Tag, ctl.Value, "[" & ctl.Name & "]", MyCriteria, Argcount
            End If
        End If
    Next ctl

    If Len(Me.Date_From & "") <> 0 And Len(Me.Date_To & "") <> 0 Then
        If Len(MyCriteria & "") <> 0 Then
            MyCriteria = MyCriteria & " And "
        End If
        MyCriteria = MyCriteria & " [Date_BR] between #" & Me.Date_From & "# And #" & Me.Date_To & "#"
    End If
    
    'Debug.Print MyCriteria
    
    myStr = "select * from S_NAMES where " & MyCriteria
    Me.S_NAME.Form.RecordSource = myStr
    Me.Requery
    
End Sub

 

جعفر

566.Employees.mdb.zip

شكرا أخى جعفر ..

بالفعل البحث يعتمد على كل الحقول واحيانا فقط التاريخ من إلى ....

قام بنشر
53 دقائق مضت, jjafferr said:

أختي

 

الظاهر انك بحثتي بالتاريخ فقط!!

على العموم ، هذا الكود المعدل يعمل للبحثين معا ، او اي بحث مستقل (الحقول او التاريخ):



Private Sub بحث_Click()
On Error Resume Next

    Dim ctl As Control
    Dim Argcount As Integer
    Dim str As String

    Argcount = 0
    MyCriteria = ""
    For Each ctl In Me.Controls
        If (ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Or ctl.ControlType = acCheckBox) And ctl.Tag <> "" Then
            If ctl.Name <> "Date_From" And ctl.Name <> "Date_To" Then
                AddToWhere ctl.Tag, ctl.Value, "[" & ctl.Name & "]", MyCriteria, Argcount
            End If
        End If
    Next ctl

    If Len(Me.Date_From & "") <> 0 And Len(Me.Date_To & "") <> 0 Then
        If Len(MyCriteria & "") <> 0 Then
            MyCriteria = MyCriteria & " And "
        End If
        MyCriteria = MyCriteria & " [Date_BR] between #" & Me.Date_From & "# And #" & Me.Date_To & "#"
    End If
    
    'Debug.Print MyCriteria
    
    myStr = "select * from S_NAMES where " & MyCriteria
    Me.S_NAME.Form.RecordSource = myStr
    Me.Requery
    
End Sub

 

جعفر

566.Employees.mdb.zip

أخى جعفر ..

أسفة عذبتك معاي

في حالة البحث بين تارخين متطابقين تظهر نتيجة في البحث مثلا من 2016/01/01 إلى 2016/01/01  او من 2016/02/02 إلى 2016/02/02

 

اما في حالة البحث بين تارخين مختلفين مثال  2016/01/01 إلى 2016/01/06

لا تظهر نتبجة ولا اعرف السبب

:wallbash:

قام بنشر
3 دقائق مضت, jjafferr said:

ارفق لكي نفس البرنامج مرة اخرى ،

كل شئ عندي تمام:smile:

566.gif

.

جعفر

566.Employees.mdb.zip

الاحظ معاك تاريخ الترقية 01Jan-16-

بينما معاي 01/01/2016

فهل تعتقد من إعدادات تنسيق التاريخ 

؟ ؟

قام بنشر

الظاهر هكذا !!

بس لوسمحتي تأخذين صورة للشاشة وارسليها ،

يمكن اعدادات تنسيق التاريخ عندك نظام امريكي ، يعني الشهر / اليوم / السنة ،

والمشكلة هاي ما تبين إلا في التواريخ الاكبر من 12 !!

 

ولكن ومثل ما تفضلتي ، غيري تنسيق التاريخ في جهازك واخبريني التجربة.

 

 

ولكن ، رجاء تجربي هذا المرفق اولا وقبل تغيير اي شئ:smile:

 

جعفر

566.1.Employees.mdb.zip

  • Like 1
  • Thanks 1
قام بنشر
1 دقيقه مضت, jjafferr said:

الظاهر هكذا !!

بس لوسمحتي تأخذين صورة للشاشة وارسليها ،

يمكن اعدادات تنسيق التاريخ عندك نظام امريكي ، يعني الشهر / اليوم / السنة ،

والمشكلة هاي ما تبين إلا في التواريخ الاكبر من 12 !!

 

ولكن ومثل ما تفضلتي ، غيري تنسيق التاريخ في جهازك واخبريني التجربة.

 

 

ولكن ، رجاء تجربي هذا المرفق اولا وقبل تغيير اي شئ:smile:

 

جعفر

566.1.Employees.mdb.zip

طيب لحظات اخى جعفر 

اخى العزيز جعفر 

الآن البحث يعمل بشكل دقيق وممتاز:wavetowel:

 

ولكن ممكن تخبرني وتشرح شو كانت المشكلة وشو عملت عشان نتعلم منك ..

:rol:

قام بنشر

التاريخ يخلق مشكلة في الكثير من الاحيان ، وبعض الاحيان بسبب اعدادات الكمبيوتر ، لهذا السبب انا عملت هذا الرابط
 

.

وبإستخدام الوحدة النمطية الموجودة في الرابط اعلاه والتي تهتم بالتاريخ ، اصبح الكود هكذا:


Private Sub بحث_Click()
On Error Resume Next

    Dim ctl As Control
    Dim Argcount As Integer
    Dim str As String

    Argcount = 0
    MyCriteria = ""
    For Each ctl In Me.Controls
        If (ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Or ctl.ControlType = acCheckBox) And ctl.Tag <> "" Then
            If ctl.Name <> "Date_From" And ctl.Name <> "Date_To" Then
                AddToWhere ctl.Tag, ctl.Value, "[" & ctl.Name & "]", MyCriteria, Argcount
            End If
        End If
    Next ctl

    If Len(Me.Date_From & "") <> 0 And Len(Me.Date_To & "") <> 0 Then
        If Len(MyCriteria & "") <> 0 Then
            MyCriteria = MyCriteria & " And "
        End If
        'MyCriteria = MyCriteria & " [Date_BR] between #" & Me.Date_From & "# And #" & Me.Date_To & "#"
        MyCriteria = MyCriteria & " [Date_BR] between " & DateFormat(Me.Date_From) & " And " & DateFormat(Me.Date_To)
    End If
    
    'Debug.Print MyCriteria
    
    myStr = "select * from S_NAMES where " & MyCriteria
    Me.S_NAME.Form.RecordSource = myStr
    Me.Requery
    
End Sub

 

جعفر

 

قام بنشر
10 دقائق مضت, jjafferr said:

التاريخ يخلق مشكلة في الكثير من الاحيان ، وبعض الاحيان بسبب اعدادات الكمبيوتر ، لهذا السبب انا عملت هذا الرابط
 

.

وبإستخدام الوحدة النمطية الموجودة في الرابط اعلاه والتي تهتم بالتاريخ ، اصبح الكود هكذا:



Private Sub بحث_Click()
On Error Resume Next

    Dim ctl As Control
    Dim Argcount As Integer
    Dim str As String

    Argcount = 0
    MyCriteria = ""
    For Each ctl In Me.Controls
        If (ctl.ControlType = acTextBox Or ctl.ControlType = acComboBox Or ctl.ControlType = acCheckBox) And ctl.Tag <> "" Then
            If ctl.Name <> "Date_From" And ctl.Name <> "Date_To" Then
                AddToWhere ctl.Tag, ctl.Value, "[" & ctl.Name & "]", MyCriteria, Argcount
            End If
        End If
    Next ctl

    If Len(Me.Date_From & "") <> 0 And Len(Me.Date_To & "") <> 0 Then
        If Len(MyCriteria & "") <> 0 Then
            MyCriteria = MyCriteria & " And "
        End If
        'MyCriteria = MyCriteria & " [Date_BR] between #" & Me.Date_From & "# And #" & Me.Date_To & "#"
        MyCriteria = MyCriteria & " [Date_BR] between " & DateFormat(Me.Date_From) & " And " & DateFormat(Me.Date_To)
    End If
    
    'Debug.Print MyCriteria
    
    myStr = "select * from S_NAMES where " & MyCriteria
    Me.S_NAME.Form.RecordSource = myStr
    Me.Requery
    
End Sub

 

جعفر

 

رائع اشكرك على المساعدة والمعلومة 

 

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