多谢以上2位的帮助,我都试过了,好像不行。请看以下是点击“取消”的代码: Private Sub cmdCancel_Click() On Error Resume Next SetButtons True mbEditFlag = False mbAddNewFlag = False adoPrimaryRS.CancelUpdate If mvBookMark > 0 Then adoPrimaryRS.Book = mvBookMark Else adoPrimaryRS.MoveFirst End If mbDataChanged = False End Sub 我用调试发现是在adoPrimaryRS.CancelUpdate中出的问题 而报错(标题是“microsoft datagrid 错误”)都出在一下的代码: Private Sub adoPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset) '为这个 recordset 显示当前记录位置 lblStatus.Caption = "第" & CStr(adoPrimaryRS.AbsolutePosition) & "条记录 " & "/" & " 共" & CStr(adoPrimaryRS.RecordCount) & "条记录" End Sub
Private Sub cmdCancel_Click()
On Error Resume Next
SetButtons True
mbEditFlag = False
mbAddNewFlag = False
adoPrimaryRS.CancelUpdate
If mvBookMark > 0 Then
adoPrimaryRS.Book = mvBookMark
Else
adoPrimaryRS.MoveFirst
End If
mbDataChanged = False
End Sub
我用调试发现是在adoPrimaryRS.CancelUpdate中出的问题
而报错(标题是“microsoft datagrid 错误”)都出在一下的代码:
Private Sub adoPrimaryRS_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
'为这个 recordset 显示当前记录位置
lblStatus.Caption = "第" & CStr(adoPrimaryRS.AbsolutePosition) & "条记录 " & "/" & " 共" & CStr(adoPrimaryRS.RecordCount) & "条记录"
End Sub