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

تعديل كود بحث


Ahmed_J
إذهب إلى أفضل إجابة Solved by husamwahab,

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

السلام عليكم

شكرا لك استاذي العزيز وبارك الله فيك

لكن ؟ كيف يتم التنقل بين السجلات في حالة وجود اكثر من اسم متشابة  (الانتقال للسجل التالي)

اعتقد من الافضل ان يوضع في زر امر  وتمكين خاصية اكمال البحث

وشكرا لك

 

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

انا عاجز عن الشكر يا استاذ محمد جزاك الله كل خير وجعله فى ميزان حسناتك ان شاء الله ادرس الكود جيدا حيث انه اول كود اتعلمة فى الاكسيس لأننى اريج تنفبذ مهمة صعبة جدا ايضا داخل النموذج و بنسبة تتعدى 95 % محتاجة كود vba انا سعبد جدا بمعرفة حضرتك

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

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

Private Sub ffind_KeyUp(KeyCode As Integer, Shift As Integer)

        If KeyCode = 32 Then
        Me.ffind.Value = Me.ffind.Text & Chr$(32)
        Me.ffind.SelStart = Len(ffind.Text)
        
End If
End Sub

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

7 دقائق مضت, ahmed sherif said:

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

Private Sub ffind_KeyUp(KeyCode As Integer, Shift As Integer)

        If KeyCode = 32 Then
        Me.ffind.Value = Me.ffind.Text & Chr$(32)
        Me.ffind.SelStart = Len(ffind.Text)
        
End If
End Sub

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

أما عن شرحه فعمله وضع مسافة في خانة البحث مثلا محمد أحمد لان عندما يكون البحث بالكتابة أنية لاتستطيع وضع مسافة فنذهب الى حدث الخاص بخانت البحث وبضبط عند الضغط  

 

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

السلام عليكم

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

وشكرا لكم

Dim strSearch As String
Dim rs As Object
Set rs = Me.RecordsetClone

   
   If IsNull(Me![txtSearch]) Or (Me![txtSearch]) = "" Then
          MsgBox "رجاء ادخل اسم للبحث عنه", vbOKOnly, "خطأ في البحث"
          Me![txtSearch].SetFocus
   Exit Sub
   End If
   strSearch = Me![txtSearch]
  
   With rs
  .FindNext "[EmpName] = '" & strSearch & "'"
   
   If .EmpName <> strSearch Then
          MsgBox "لا يوجد سجل بهذا الإسم :  " & strSearch, , "غير موجود"
          Me.txtSearch = ""
          Me![txtSearch].SetFocus
   ElseIf .NoMatch Then
          MsgBox "آخر سجل في البحث عن :  " & strSearch, , "آخر سجل"
          Me.cmdSearch.Caption = "بحث"
          Me.txtSearch = ""
          Me![txtSearch].SetFocus
          Me.cmdSearch.ForeColor = RGB(0, 0, 255)
  DoCmd.GoToRecord , , acFirst
   Else
   Me.Bookmark = .Bookmark
          MsgBox "تم ايجاد اسم :  " & strSearch, , "مبروك"
          Me.cmdSearch.Caption = "اكمال البحث"
          Me.cmdSearch.ForeColor = RGB(255, 0, 0)
   End If
   End With

rs.Close
Set rs = Nothing

 

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

Private Sub cmdSearch_Click()
Dim strSearch As String
Dim rs As Object
Set rs = Me.RecordsetClone

   
   If IsNull(Me![txtSearch]) Or (Me![txtSearch]) = "" Then
          MsgBox "رجاء ادخل اسم للبحث عنه", vbOKOnly, "خطأ في البحث"
          Me![txtSearch].SetFocus
   Exit Sub
   End If
   strSearch = Me![txtSearch]
  
   With rs
'  .FindNext "[EmpName] = '" & strSearch & "'"
   .FindNext "[EmpName] like '*" & strSearch & "*'"
   If Not .EmpName Like "*" & strSearch & "*" Then
'   If .EmpName <> strSearch Then
          MsgBox "لا يوجد سجل بهذا الإسم :  " & strSearch, , "غير موجود"
          Me.txtSearch = ""
          Me![txtSearch].SetFocus
   ElseIf .NoMatch Then
          MsgBox "آخر سجل في البحث عن :  " & strSearch, , "آخر سجل"
          Me.cmdSearch.Caption = "بحث"
          Me.txtSearch = ""
          Me![txtSearch].SetFocus
          Me.cmdSearch.ForeColor = RGB(0, 0, 255)
  DoCmd.GoToRecord , , acFirst
   Else
   Me.Bookmark = .Bookmark
          MsgBox "تم ايجاد اسم :  " & strSearch, , "مبروك"
          Me.cmdSearch.Caption = "اكمال البحث"
          Me.cmdSearch.ForeColor = RGB(255, 0, 0)
   End If
   End With

rs.Close
Set rs = Nothing
End Sub

تفضل اخي الكريم

هذا التعديل على نفس الكود.  واليك الملف بعد التعديل

وافينا بالنتيجة

تحياتي

za-EmployyeUP.accdb

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

السلام عليكم

شكرا لك استاذي العزيز @سامي الحداد

بارك الله فيك

التعديل يبحث باي حرف من الاسم  ويجد الاسماء مثل (محمد  او احمد)

اريد ان يبحث باول حرف من الاسم فقط (م او أ ) لان لدي ملف باللغة الانكليزية  ومحتاجه جدا

وشكرا لك

 

 

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

  • أفضل إجابة

السلام عليكم

مشاركة مع اساتذتي الاعزاء

بدل السطرين

.FindNext "[EmpName] like '*" & strSearch & "*'"
If Not .EmpName Like "*" & strSearch & "*" Then

بالتالي

.FindNext "[EmpName] like '" & strSearch & "*'"
   If Not .EmpName Like strSearch & "*" Then

 

  • Like 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