VbMarcar error si no esta el registro en la base vba
Tengo un checkbox, un comboBox que al momento de pucharle al checkbox puedo buscar en el comboBox el id en la base de excel, y me trae los datos en los textBox.
Me gustaría que cuando ingrese un id que no exista en la base me mande mensaje de que el id no existe, y no que me detenga la aplicación.
Les dejo mi código abajo
Private Sub CheckBox1_Click()
If CheckBox1.Value = True Then
ComboBox1.Enabled = True
cargarfolio
Else
ComboBox1.Enabled = False
ComboBox1.Clear
End If
End Sub
Private Sub ComboBox1_Change()
Dim var2 As String
If ComboBox1 = "" Then
Else
Editar.Locked = False
Sheets("Formulario").Activate
If ComboBox1 = Empty Then
MsgBox "Para modificar primero id", vbInformation, "Almacen"
ComboBox1.ListIndex = 0
ComboBox1.SetFocus
End If
var2 = ComboBox1.Column(0)
Cells.Find(what:=ComboBox1.Value, After:=ActiveCell, LookIn:=xlFormulas, lookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=False _
, SearchFormat:=False).Activate
If var2 = ActiveCell Then
TextBox1 = ActiveCell.Value
TextBox2 = ActiveCell.Offset(0, 1)
TextBox3 = ActiveCell.Offset(0, 2)
ComboBox2 = ActiveCell.Offset(0, 3)
TextBox5 = ActiveCell.Offset(0, 4)
TextBox6 = ActiveCell.Offset(0, 5)
TextBox7 = ActiveCell.Offset(0, 6)
ComboBox3 = ActiveCell.Offset(0, 7)
TextBox8 = ActiveCell.Offset(0, 8)
ComboBox4 = ActiveCell.Offset(0, 9)
TextBox1.Locked = False
TextBox2.Locked = False
TextBox3.Locked = False
ComboBox2.Locked = False
TextBox5.Locked = False
TextBox6.Locked = False
TextBox7.Locked = False
ComboBox3.Locked = False
TextBox8.Locked = False
ComboBox4.Locked = False
End If
End If
End Sub
Private Sub CommandButton1_Click()
'En esta parte verificamos si el id ya existe, si es asi, no introduce nada, en caso contrario introduce valores
Registro = TextBox1.Value
contarregistros = Application.WorksheetFunction.CountIf(Columns(1), Registro) 'contar si en su version vba
If contarregistros > 0 Then
MsgBox "Ya existe un registro con ese FOLIO KUE"
Else
Sheets("Formulario").Activate
Range("A" & Cells.Rows.Count).End(xlUp).Offset(1).Select
ActiveCell = TextBox1.Value
ActiveCell.Offset(0, 1) = TextBox2.Value
ActiveCell.Offset(0, 2) = TextBox3.Value
ActiveCell.Offset(0, 3) = ComboBox2.Value
ActiveCell.Offset(0, 4) = TextBox5.Value
ActiveCell.Offset(0, 5) = TextBox6.Value
ActiveCell.Offset(0, 6) = TextBox7.Value
ActiveCell.Offset(0, 7) = ComboBox3.Value
ActiveCell.Offset(0, 8) = TextBox8.Value & "" & ComboBox5.Value
ActiveCell.Offset(0, 9) = ComboBox4.Value
MsgBox "Datos ingresados exitosamente", vbInformation, "Servitap"
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
ComboBox2 = ""
TextBox5 = ""
TextBox6 = ""
TextBox7 = ""
ComboBox3 = ""
TextBox8 = ""
ComboBox5 = ""
ComboBox4 = ""
End If
Me.ListBox1.Clear
Call LlenarListBox
TextBox1.SetFocus
End Sub