| ADO WillChangeRecordset and RecordsetChangeComplete EventsThe WillChangeRecordset EventThe WillChangeRecordset event is triggered before an operation 
		changes the Recordset. Note: Before this event returns, set the status parameter to 
		adStatusCancel to cancel the operation that caused this event or set it 
		to adStatusUnwantedEvent to prevent subsequent notifications. The RecordsetChangeComplete Event The RecordsetChangeComplete event is triggered after a Recordset has 
		changed.  Note: Before this event returns, set the status parameter to 
		adStatusUnwantedEvent to prevent subsequent notifications.  Note: The WillChangeRecordset and the RecordsetChangeComplete 
		event can occur when calling the Requery method or the Open method of a 
		Recordset object.  Syntax 
			
				| WillChangeRecord reason,status,objRs RecordsetChangeComplete reason,objErrOR,status,objRs |  
 
			
				| Parameter | Description |  
				| reason | An EventReasonEnum value that specifies the 
				reason for this event |  
				| status | An EventStatusEnum value that indicates the 
				status of the execution of the event |  
				| objError | The name of an Error object that describes the 
				error if status is set to adStatusErrorsOccurred, otherwise it 
				is not set |  
				| objRs | The name of the Recordset object that triggered 
				this event |  Example 
			
				| 
				'use the WithEvents keyword to designate that events
 'can be handled by this Recordset object
 Dim WithEvents objRecSet As 
				ADODB.Recordset
 
 'Note how the object name, objRecSet, is 
				incorporated into the event Sub name
 Private Sub 
				objRecSet_WillChangeRecordset(adReason 
				As ADODB.EventReasonEnum, _
 adStatus As ADODB.EventStatusEnum, ByVal pRecordset As 
				ADODB.Recordset)
 
 'place any code you desire here, for example
 If adReason = adRsnResynch Then
 adStatus = adStatusCancel
 End If
 End Sub
OR,
 
 Private Sub 
				objRecSet_RecordsetChangeComplete(adReason 
				As ADODB.EventReasonEnum, _
 ByVal pError As ADODB.Error, adStatus As 
				ADODB.EventStatusEnum, _
 ByVal pRecordset As ADODB.Recordset )
 
 ' place any code you desire here, for 
				example
 If adStatus = 
				adStatusErrorsOccurred Then
 Dim objError As ADODB.Error
 For Each objError in pRecordset.Errors
 Debug.Print vbtab; objError.Description
 Next
 End If
 End Sub
 
 |    EventReasonEnum Values
			
				| Constant | Value | Description |  
				| adRsnRequery | 7 | An operation requeried the Recordset |  
				| adRsnResynch | 8 | An operation resynchronized the Recordset with 
				the database |  
				| adRsnClose | 9 | An operation closed the Recordset |  
				| adRsnMove | 2 | The record pointer has been moved in the 
				Recordset |  
 EventStatusEnum Values
			
				| Constant | Value | Description |  
				| adStatusOK | 1 | The operation that caused the event was 
				successful |  
				| adStatusErrorsOccurred | 2 | The operation that caused the event failed |  
				| adStatusCantDeny | 3 | The operation that caused the event cannot be 
				cancelled |  
				| adStatusCancel | 4 | The operation that caused the event is 
				cancelled |  
				| adStatusUnwantedEvent | 5 | Prevents subsequent notifications before the 
				event method has finished executing |    |