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

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

قام بنشر

السلام عليكم

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

مثلا

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