Dejo algunos controles para los seguidores del tema... el resto va en el libro que te envío por mail.
'Alta de un registro
Private Sub CommandButton1_Click()
Application.ScreenUpdating = False
ActiveSheet.Unprotect "Pass123"
'Declaración de variables
'
Dim strTitulo As String
Dim Continuar As String
Dim TransRowRng As Range
Dim NewRow As Integer
Dim Limpiar As String
'-----------------------------
'x Elsamatilde
'Aquí se agregan las instrucciones de control para cada campo.
'Algunos controles de 'tipo' ya pueden colocarse en el mismo control,
'x ej: la cédula (ver TxtCedula_Exit)
'pelotón (ver propiedad MaxLenght - largo del campo y posibles valores
'id: que no se encuentre repetido, que sea numérico (falta completar ....)
Cuenta = Application.WorksheetFunction.CountIf(Range("A:A"), Me.TxtId)
If Cuenta > 0 Then 'ATENCIÓN LUIS: también se puede evaluar dentro del mismo txtId
MsgBox "El Id '" & Me.TxtId & "' ya se encuentra en Uso..!", vbExclamation, strTitulo
TxtId.SetFocus
Exit Sub
End If
'controla que campos Apellido, Nombres no queden vacíos
If TxtApellidos = "" Then
MsgBox "Falta completar Apellidos.", , "ERROR"
TxtApellidos.SetFocus
Exit Sub
End If
If TxtNombres = "" Then
MsgBox "Falta completar Nombres.", , "ERROR"
TxtNombres.SetFocus
Exit Sub
End If
'repetir este control para campos txtCedula, txtPeloton y Observaciones (si se trata de un campo obligatorio)
'----------------------------
'recién aquí se pregunta si quiere guardar