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

عدم التكرار في الكومبو ليست


AymenShaban

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

السلام عليكم

لدي جدول يحتوي علي بيانات متلا رقم واسم ولقب

مثلا

1    ايمن   شعبان

2    احمد   على

1    خالد    سليمان

3    سالم   محمد

اريد تكوين مربع تحرير وسرد بحيت لا يحتوي على رقم مكرر وياخد اول رقم وبياناته فقط

متلا

1   ايمن   شعبان

2   احمد   علي 

3   سالم   محمد

ولكم مني كل التقدير والاحترام

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

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

المفروض في سؤالك ان تحتفظ بالرقم المتشابه الاول ولنفرض اسم الحقل ID في الجدول1

1-أعمل جدول2 لالحاق البيانات من الجدول1 الى الجدول2 حتى تحتفظ بالسجلات الاصلية ..حيث تعمل استعلام الحاق بذلك نسميه App_Q

2- اعمل استعلام من الجدول1 ولنسميه مثلا DUPE_Query

3- نعمل موديول لحذف الارقام المكررة بهذا الشكل

Sub DUPE_REMOVAL()
'مسح الارقام المكررة من الجدول
Dim db As DAO.Database
Dim rst As DAO.Recordset
Dim ingID As Long
Dim ingIDLast As Long

        Set db = CurrentDb
        Set rst = db.OpenRecordset("DUPE_Query")
        ingIDLast = 0
        Do Until rst.EOF
        ingID = rst!ID
        If ingID = ingIDLast Then
           rst.Delete
        End If
            rst.MoveNext
            ingIDLast = ingID
        Loop
        rst.Close
        Set rst = Nothing
        Set db = Nothing

End Sub

4- اعمل نموذج مع كمبوبوكس مصدر الصف له من الاستعلام  DUPE_Query

5- في حدث عند التحميل للنموذج ضع الكود التالي

DoCmd.SetWarnings False
DoCmd.OpenQuery "App_Q"
DoCmd.SetWarnings True
Call DUPE_REMOVAL

 

تم تعديل بواسطه Eng.Qassim
  • Like 3
رابط هذا التعليق
شارك

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

بالرغم من انى مش مقتنع بفكره التكرار لان التكرار هو للصف بالكامل

ولكن اتفضلاخى @AymenShaban محاوله منى ب 3 طرق

الاولى باستخدام dlookup فى استعلام qry مع frm وغير محبب استخدامه مع البيانات الكثيره

الثانى frm2 وتم استخدام كود فحدث عند الفتح

Private Sub Form_Open(Cancel As Integer)

   On Error Resume Next
    Dim Rs As DAO.Recordset
    
    Dim dict As Dictionary
    Set dict = New Dictionary
    
    Set Rs = CurrentDb.OpenRecordset("tbl")
    
    Rs.MoveLast: Rs.MoveFirst

    For i = 0 To Rs.RecordCount - 1
        dict.Add "'" & Rs!ID & "'", "'" & Rs!sname & "'"
        Rs.MoveNext
    Next

    Dim key As Variant
    For Each key In dict.Keys
'        Debug.Print "Key: " & key, "Value: " & dict.Item(key)
        Me.cmbName.AddItem key & ";" & dict.Item(key)
    Next

Rs.Close
End Sub

الثالث frm3 وهو باستخدام حقل اضافى لترقيم السجلات

بالتوفيق

new6.mdb

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

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information