Dim cn As New ADODB.Connection 'Creamos el objeto Connection.
Private WithEvents rs As ADODB.Recordset 'Creamos el Recordset con soporte de eventos.
Private Sub Command1_Click()
'Movemos al primer registro del Recordset.
rs.MoveFirst
End Sub
Private Sub Command2_Click()
'Verificamos si no estamos antes del principio del Recordset.
If rs.BOF = False Then
rs.MovePrevious 'Movemos al registro anterior.
End If
End Sub
Private Sub Command3_Click()
'Verificamos si no estamos después del último elemento del Recordset.
If rs.EOF = False Then
rs.MoveNext 'Movemos al siguiente registro.
End If
End Sub
Private Sub Command4_Click()
'Movemos al último registro del Recordset.
rs.MoveLast
End Sub
Private Sub Command5_Click()
rs.Close 'Cerramos el Recordset.
cn.Close 'Cerramos la conexión.
'Salimos de la aplicación.
End
End Sub
Private Sub Command6_Click()
rs.Update Array("nombre", "apellido", "telefono", "direccion", "correo"), _
Array(Text1.Text, Text2.Text, Text3.Text, Text4.Text, Text5.Text)
rs.Update 'Actualizamos el registro.
'Verificamos si no ocurrió ningún problema.
If rs.State = 1 Or rs.State = 0 Then
MsgBox ("El registro se ha actualizado con éxito.")
Else
MsgBox ("Ha ocurrido un error al actualizar el registro.")
End If
End Sub
Private Sub Command7_Click()
rs.AddNew
rs("nombre") = Text1.Text
rs("apellido") = Text2.Text
rs("telefono") = Text3.Text
rs("direccion") = Text4.Text
rs("correo") = Text5.Text
rs.Update
End Sub
Private Sub Form_Load()
Set rs = New ADODB.Recordset 'Activamos el Recordset.
'Abrimos la base de datos "agenda.mdb"
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source=C:UsersRafaelDocumentsAccessagenda.mdb"
'Especificamos la fuente de datos. En este caso la tabla "contactos".
rs.Source = "contactos"
rs.CursorType = adOpenKeyset 'Definimos el tipo de cursor.
rs.LockType = adLockOptimistic 'Definimos el tipo de bloqueo.
'Abrimos el Recordset y lo llenamos con una consulta SQL.
rs.Open "select * from contactos", cn
rs.MoveFirst 'Nos movemos al principio del Recordset.
'Cargamos los datos en las cajas de texto.
Text1.Text = rs.Fields("Nombre") 'Ponemos el nombre del registro actual.
Text2.Text = rs.Fields("Apellido") 'Ponemos el apellido del registro actual.
Text3.Text = rs.Fields("Telefono") 'Ponemos el teléfono del registro actual.
Text4.Text = rs.Fields("Direccion") 'Ponemos la dirección del registro actual.
Text5.Text = rs.Fields("Correo") 'Ponemos el correo del registro actual.
End Sub
Private Sub rs_MoveComplete(ByVal adReason As ADODB.EventReasonEnum, ByVal pError As ADODB.Error, adStatus As ADODB.EventStatusEnum, ByVal pRecordset As ADODB.Recordset)
'Si estamos antes del principio del Recordset.
If rs.BOF = True Then
rs.MoveFirst 'Movemos al principio del Recordset.
'Si estamos después del ultimo elemento del Recordset.
ElseIf rs.EOF = True Then
rs.MoveLast 'Movemos al final del Recordset.
Else
'Si se cambio del registro actual del Recordset a otro.
Text1.Text = rs.Fields("Nombre") 'Ponemos el nombre del registro actual.
Text2.Text = rs.Fields("Apellido") 'Ponemos el apellido del registro actual.
Text3.Text = rs.Fields("Telefono") 'Ponemos el teléfono del registro actual.
Text4.Text = rs.Fields("Direccion") 'Ponemos la dirección del registro actual.
Text5.Text = rs.Fields("Correo") 'Ponemos el correo del registro actual.
End If
End Sub