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

اريد تعديل على الكود التالي


sm44ms

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

السلام عليكم

اريد تعديل على هذا الكود - 

D2حقل الاسم الاساسي  مصدر بيانات NAME ARABIC 

فية حقل غير منظم اسمه EMPNA اسحب بيانات عن طريق البحث طبعا هو من جدول اخر - يقوم بنسخ الاسم الى الحقل السابق D2 عند الضغط على حفظ

 

انا اريد اذا كان الاسم مكرر في الحقل D2 لايحفظ اي بيانات فقط اريد الرساله الموجوده في الكود التالي واذا غير مكرر يحفظ لي دون عرض الرساله بان الاسم مكرر 

 

انا اريد تعديل على هذا الكود ؟؟؟؟؟

 

 

DoCmd.RunCommand acCmdSaveRecord
 Dim db As DAO.Database
    Dim rst As DAO.Recordset
    Dim existingName As String
    Dim nameExists As Boolean
    
    Set db = CurrentDb
    nameExists = False
    
    ' التحقق مما إذا كان الاسم موجودًا بالفعل في الجدول
    Set rst = db.OpenRecordset("SELECT [NAME ARABIC] FROM TABELSIMCARD WHERE [NAME ARABIC] = '" & Me.D2 & "'", dbOpenSnapshot)
    
    If Not rst.EOF Then
        ' إذا تم العثور على السجل، فذلك يعني أن الاسم موجود
        nameExists = True
    End If
    
    rst.Close
    Set rst = Nothing
    Set db = Nothing
    
    ' إذا كان الاسم موجودًا بالفعل، عرض رسالة تحذيرية وعدم الحفظ
    If nameExists Then
        MsgBox "الاسم '" & Me.D2 & "' الموظف موجود مسبقاً في نظام الكشوفات الخاصة ببطاقات الهاتف.", vbExclamation
    Else
    End If

 

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

جرب الكود ده كده 

Private Sub SaveRecord()
    Dim db As DAO.Database
    Dim rst As DAO.Recordset
    Dim nameExists As Boolean
    
    Set db = CurrentDb
    nameExists = False
    
    ' التحقق مما إذا كان الاسم موجودًا بالفعل في الجدول
    Set rst = db.OpenRecordset("SELECT [NAME ARABIC] FROM TABELSIMCARD WHERE [NAME ARABIC] = '" & Me.D2 & "'", dbOpenSnapshot)
    
    If Not rst.EOF Then
        ' إذا تم العثور على السجل، فذلك يعني أن الاسم موجود
        nameExists = True
    End If
    
    rst.Close
    Set rst = Nothing
    Set db = Nothing
    
    ' إذا كان الاسم موجودًا بالفعل، عرض رسالة تحذيرية وعدم الحفظ
    If nameExists Then
        MsgBox "الاسم '" & Me.D2 & "' الموظف موجود مسبقاً في نظام الكشوفات الخاصة ببطاقات الهاتف.", vbExclamation
    Else
        ' إذا لم يكن الاسم موجودًا، قم بحفظ السجل
        DoCmd.RunCommand acCmdSaveRecord
    End If
End Sub

 

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

الكود الذي ارسلته لم اعرف اين اضعه

شوف هذا الكود الي معي على زر الامر ... للحفظ

 

 

Private Sub SAEF_Click()
 DoCmd.RunCommand acCmdSaveRecord
 Dim db As DAO.Database
    Dim rst As DAO.Recordset
    Dim existingName As String
    Dim nameExists As Boolean
    
    Set db = CurrentDb
    nameExists = False
    
    ' التحقق مما إذا كان الاسم موجودًا بالفعل في الجدول
    Set rst = db.OpenRecordset("SELECT [NAME ARABIC] FROM TABELSIMCARD WHERE [NAME ARABIC] = '" & Me.D2 & "'", dbOpenSnapshot)
    
    If Not rst.EOF Then
        ' إذا تم العثور على السجل، فذلك يعني أن الاسم موجود
        nameExists = True
    End If
    
    rst.Close
    Set rst = Nothing
    Set db = Nothing
    
    ' إذا كان الاسم موجودًا بالفعل، عرض رسالة تحذيرية وعدم الحفظ
    If nameExists Then
        MsgBox "الاسم '" & Me.D2 & "' الموظف موجود مسبقاً في نظام الكشوفات الخاصة ببطاقات الهاتف.", vbExclamation
    Else
    
    End If
End Sub

 

هو عباره عن نقل الاسم من حقل غير منظم اسمه D2

الى حقل منظم اسمه NAME ARABIC

اذا كان الاسم موجود في الجدول الاساسي المنظم تظهر الرساله انه مكرر - ولا اريد يحفظ البيانات واذا لم يكن مكرر يتم الحفظ

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

انت بحاجة  عند وجود التكرار  الى التراجع والخروج من الحدث فقط

جرب هذا التعديل

Private Sub SAEF_Click()
  Dim db As DAO.Database
    Dim rst As DAO.Recordset
    Dim existingName As String
    Dim nameExists As Boolean
    Set db = CurrentDb
    nameExists = False
    ' التحقق مما إذا كان الاسم موجودًا بالفعل في الجدول
    Set rst = db.OpenRecordset("SELECT [NAME ARABIC] FROM TABELSIMCARD WHERE [NAME ARABIC] = '" & Me.D2 & "'", dbOpenSnapshot)
    If Not rst.EOF Then
        ' إذا تم العثور على السجل، فذلك يعني أن الاسم موجود
        nameExists = True
    End If
    rst.Close
    Set rst = Nothing
    Set db = Nothing
     ' إذا كان الاسم موجودًا بالفعل، عرض رسالة تحذيرية وعدم الحفظ
    If nameExists Then
        MsgBox "الاسم '" & Me.D2 & "' الموظف موجود مسبقاً في نظام الكشوفات الخاصة ببطاقات الهاتف.", vbExclamation
    Undo
    DoCmd.CancelEvent
    Exit Sub
    Else
    DoCmd.RunCommand acCmdSaveRecord
    End If
End Sub
   

 

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

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

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



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

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

Important Information