Que código utilizo en una macro de excel para evitar el ingreso de registros duplicados.

Tengo una macro para ingresar datos mediante un formulario pero quiero evitar el ingreso de datos duplicados, agradecería si alguien puede ayudarme con el código, ya que mis conocimientos al respecto son muy pocos.
El código es el siguiente:

Private Sub CommandButton1_Click()
Sheets("2016").Activate
If TextBox1 = "" Or TextBox2 = "" Or ComboBox1 = "" _
Or TextBox19 = "" Then
MsgBox "Está dejando campos requeridos vacios por favor completelos", vbExclamation, "Registro"
TextBox1.SetFocus
Else
Range("A" & Cells.Rows.Count).End(xlUp).Offset(1).Select

ActiveCell.Offset(0, 0) = TextBox1.Value
ActiveCell.Offset(0, 1) = TextBox2.Value
ActiveCell.Offset(0, 2) = ComboBox1.Value
ActiveCell.Offset(0, 3) = TextBox4.Value
ActiveCell.Offset(0, 4) = ComboBox2.Value
ActiveCell.Offset(0, 5) = ComboBox3.Value
ActiveCell.Offset(0, 6) = TextBox7.Value
ActiveCell.Offset(0, 7) = TextBox8.Value
ActiveCell.Offset(0, 8) = TextBox9.Value
ActiveCell.Offset(0, 9) = TextBox10.Value
ActiveCell.Offset(0, 10) = TextBox11.Value
ActiveCell.Offset(0, 11) = TextBox12.Value
ActiveCell.Offset(0, 12) = TextBox13.Value
ActiveCell.Offset(0, 13) = TextBox14.Value
ActiveCell.Offset(0, 14) = TextBox15.Value
ActiveCell.Offset(0, 15) = TextBox16.Value
ActiveCell.Offset(0, 16) = TextBox17.Value
ActiveCell.Offset(0, 17) = TextBox18.Value
ActiveCell.Offset(0, 18) = TextBox19.Value
ActiveCell.Offset(0, 19) = TextBox20.Value
MsgBox "Registro ingresado exitosamente", vbInformation, "Registro"
TextBox1 = ""
TextBox2 = ""
ComboBox1 = ""
TextBox4 = ""
ComboBox2 = ""
ComboBox3 = ""
TextBox7 = ""
TextBox8 = ""
TextBox9 = ""
TextBox10 = ""
TextBox11 = ""
TextBox12 = ""
TextBox13 = ""
TextBox14 = ""
TextBox15 = ""
TextBox16 = ""
TextBox17 = ""
TextBox18 = ""
TextBox19 = ""
TextBox20 = ""
TextBox4.SetFocus
End If

Range("BA" & Cells.Rows.Count).End(xlUp).Offset(1).Select
ActiveCell.Offset(0, 0) = TextBox21.Value
TextBox21 = ""

End Sub
Private Sub CommandButton4_Click()
Unload Me
End Sub
Private Sub CommandButton5_Click()
Unload Me
Buscaproveedores1.Show
End Sub

Private Sub CommandButton6_Click()
Unload Me
eliminaproveedores.Show
End Sub

Private Sub Label22_Click()

End Sub

Private Sub UserForm_Click()

End Sub
Private Sub UserForm_Initialize()

Dim rango, celda As Range
Dim rango1, celda1 As Range
Dim rango2, celda2 As Range

Set rango = Range("BA3:BA100")
Set rango1 = Range("BC3:BC5")
Set rango2 = Range("BE3:BE9")

For Each celda In rango
ComboBox1.AddItem celda.Value
Next celda

For Each celda1 In rango1
ComboBox2.AddItem celda1.Value
Next celda1

For Each celda2 In rango2
ComboBox3.AddItem celda2.Value
Next celda2

End Sub

Añade tu respuesta

Haz clic para o