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

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

قام بنشر (معدل)

بعد اذن الاستاذ علي

اخي العزيز الاكسس بمجرد الانتقال من حقل الى اخر يقوم ذاتياً بحفظ السجل .

يجب عليك وضع زر تراجع في الفورم الرئيسي والفرعي

او اعتمد هذه الاكواد

Private Sub Form_Undo(Cancel As Integer)
    If bPreventClose Then
        Cancel = True
    End If
End Sub

Private Sub Form_Unload(Cancel As Integer)

    If bPreventClose = True Then
        Cancel = True
    End If
    bPreventClose = False
End Sub

Private Sub Form_BeforeUpdate(Cancel As Integer)

    Dim UserResp As Integer
    UserResp = MsgBox("انقر نعم للتراجع او لا للحفظ ... سيتم التراجع عن التغيير", vbYesNoCancel)
    Select Case UserResp
        Case vbNo
            Cancel = True
            Me.Undo
            bPreventClose = False
            Exit Sub
        Case vbCancel
            bPreventClose = True
            Cancel = True
            Exit Sub
        Case Else
            bPreventClose = False
    End Select
End Sub

Private Sub Command13_Click()
On Error GoTo Command13_Click_Err

    On Error Resume Next
    DoCmd.RunCommand acCmdSaveRecord
    If (MacroError <> 0) Then
        Beep
        MsgBox MacroError.Description, vbOKOnly, ""
            End If


Command13_Click_Exit:
    Exit Sub

Command13_Click_Err:
    MsgBox Error$
    Resume Command13_Click_Exit

End Sub

تم تعديل بواسطه .Azhar
قام بنشر (معدل)

تضع هذه الاكواد لكل فورم الرئيسي والفرعي باستثناء الكود الاخير تضعه فقط على النموذج الرئيسي .

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

Private Sub Command13_Click()
On Error GoTo Command13_Click_Err

    On Error Resume Next
    DoCmd.RunCommand acCmdSaveRecord
    If (MacroError <> 0) Then
        Beep
        MsgBox MacroError.Description, vbOKOnly, ""
            End If


Command13_Click_Exit:
    Exit Sub

Command13_Click_Err:
    MsgBox Error$
    Resume Command13_Click_Exit

End Sub

وهذان تضعهم في الفرعي والرئيسي / الاخذ بعين الاعتبار اسماء الازرار

Private Sub Form_Undo(Cancel As Integer)
    If bPreventClose Then
        Cancel = True
    End If
End Sub

Private Sub Form_Unload(Cancel As Integer)

    If bPreventClose = True Then
        Cancel = True
    End If
    bPreventClose = False
End Sub

Private Sub Form_BeforeUpdate(Cancel As Integer)

    Dim UserResp As Integer
    UserResp = MsgBox("انقر نعم للتراجع او لا للحفظ ... سيتم التراجع عن التغيير", vbYesNoCancel)
    Select Case UserResp
        Case vbNo
            Cancel = True
            Me.Undo
            bPreventClose = False
            Exit Sub
        Case vbCancel
            bPreventClose = True
            Cancel = True
            Exit Sub
        Case Else
            bPreventClose = False
    End Select
End Sub
تم تعديل بواسطه .Azhar
  • 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