Private Sub Adodc1_WillChangeRecord(ByVal adReason As ADODB.EventReasonEnum, ByVal cRecords As Long, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
  Select Case adReason
    Case adRsnAddNew
      If MsgBox("您要保存新建的记录吗?", vbYesNo, "确认操作!") = vbYes Then
        MsgBox "已经保存"
      Else
        adStatus = adStatusCancel
        MsgBox "放弃保存"
      End If
    Case adRsnUpdate
      If MsgBox("您要保存所做的修改吗?", vbYesNo, "确认操作!") = vbYes Then
        MsgBox "已经保存"
      Else
        adStatus = adStatusCancel
        MsgBox "放弃保存"
      End If
  End Select
End Sub
你应该在这个事件中写你的代码,而不是adodc1_recordchangecomplete.