الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

كود للبحث عن سجل بمقارنة حقلين

مغلق
بدأه الغريب في 16 أكتوبر 2001 · 7 رد · 869 مشاهدة · في مراجعة المواضيع
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

هذا الكود يقوم بالبحث عن سجل عن طريق مقارنة حقلين ، ويتم استخدامه بعد إضافة حقلي نص الأول اسمه في الكود text1 والثاني text2 ، وزر أمر اسمه ( بحث ) ، ويوضع الكود في حدث النقر في زر الأمر ، ويقوم بالبحث في حقلي الرقم والتاريخ في السجلات فإذا وجد سجل مطابق قام بعرضه ، وإذا لم يجده عرض عليك البحث عن طريق حقل ثالث وهو الاسم .

والكود كالتالي :-

Private Sub بحث_Click()

Dim sWs As String, sMs As String, msg As String

Dim awa1, awa2

If Me.text1 = "" And Me.text2 = "" Then Exit Sub

If Me.text1 = "" Then

MsgBox "أكتب رقم المعاملة"

Me.text1.SetFocus

Exit Sub

ElseIf Me.text2 = "" Then

MsgBox "أكتب تاريخ المعاملة"

Me.text2.SetFocus

Exit Sub

End If

sMs = Me.text2

sWs = "الرقم = '" & Me!text1 & "'"

Me.RecordsetClone.MoveFirst

Me.RecordsetClone.FindFirst sWs

Do Until Me.RecordsetClone.NoMatch

If Me.RecordsetClone!التاريخ = sMs Then

Me.Bookmark = Me.RecordsetClone.Bookmark

Me.text1 = ""

Me.text2 = ""

Me.الاسم.SetFocus

Exit Sub

End If

Me.RecordsetClone.FindNext sWs

Loop

msg = "هذه المعاملة غير مسجلة" & Chr(13) & Chr(13) & "هل تريد البحث بالاسم"

awa1 = MsgBox(msg, 1048868)

Me.text1.SetFocus

If awa1 = 6 Then

Me.text1 = ""

Me.text2 = ""

awa2 = InputBox("أدخل الاسم")

If awa2 = "" Then Exit Sub

awa2 = "الاسم = '" & awa2 & "'"

Me.RecordsetClone.MoveFirst

Me.RecordsetClone.FindFirst awa2

Do Until Me.RecordsetClone.NoMatch

Me.Bookmark = Me.RecordsetClone.Bookmark

Me.text1 = ""

Me.text2 = ""

Me.الاسم.SetFocus

Exit Sub

Me.RecordsetClone.FindNext awa2

Loop

MsgBox ("لم يتم العثور على الاسم")

End If

End Sub

طبعاً الاسماء في الكود يجب أن تطابق الاسماء في النموذج سواء مربعات النص أو حقول أو زر الأمر ويمكنك تغيرها في الكود بما يوافق النموذج لديك .

وفي الاخير أعترف أنه لايوجد شيء من الابداع في هذا الكود فهو مجرد تغيير وإضافة في الكود الذي سبق أن طرحته في موضوع ( كود يمنع تسجيل سجل مرتين بمقارنة حقلين )، ولكن مع ذلك فهو حل لمشكلة عجزت أن أجد لها حلاً من خلال المواضيع المطروحة في هذا المنتدى . وهي البحث عن سجل عبر حقلين بغير طريقة الفلتره .

وبالتوفيق للجميع .

#2

الأخ الغريب

هناك حل بسيط وهو أن يبحث عن قيمه معينة في حقل فإذا وجدها يتأكد من القيمة الأخرى في الحقل أو الحقول الآخرى فإذا لم تكن تطابق يواصل البحث ، مارأيك ؟

ولك تحياتي

#3

الأخ ابوحمود هلا طرحت كود الطريقة التي اشرت لها لأستفيد ويستفيد غيري منها .

والشكر موصول لك .

#4

الأخ الغريب

آمل أن تعطيني بعض الوقت لأعمل مثال .

ولك تحياتي

#5

الأخ الغريب

هذا مثال للبحث بطريقتين :

http://mypage.ayna.com/h_h123/Find.zip

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

وللجميع التحية

#6

مشكور أخوي وقد قمت بنسخ المثال وسأجربه في أقرب فرصة .

#7

الاخ العزيز ابوحمود

لم استطع تنزيل الملف :(

#8

بارك الله فيك يا اخى وذادك علما

80.gif

هذا الموضوع مغلق.

مواضيع مشابهة