Como evitar que se duplique un dato en la base de datos
Trato que al ingresar los datos a la base de datos si en la columna "B" DNI es una cifra que ya esta en dicha base me lo indique en un Msgbox "El Dato ya existe"
Esta es la macro que tengo en el botón Aceptar
Private Sub Aceptar_Click()
Me.ListBox1.RowSource = ""
If TextDNI = "" Then
MsgBox "Elegir Dni"
Exit Sub
ElseIf TextMATERIA = "" Then
MsgBox "Elegir Una Materia"
Exit Sub
ElseIf OptionButton1.value = False And OptionButton2.value = False Then
MsgBox "Elegir Una CALIFICACION"
Exit Sub
End If
Dim CODIGO As String
Dim DNI As String
Dim NOMBRE As String
Dim APELLIDO As String
Dim CURSO As String
Dim AÑOS As String
Dim COND As String
Dim MATERIA As String
Dim OBSERVACIONES As String
Dim UltimaFila As Double 'Variable que almacena ultima fila
'Paso del formulario a la variable
CODIGO = TextCODIGO.value
DNI = TextDNI.value
NOMBRE = TextNOMBRE.value
APELLIDO = TextAPELLIDO.value
CURSO = TextCURSO.value
AÑOS = TextAÑOS
COND = TextCOND
MATERIA = TextMATERIA.value
OBSERVACIONES = TextOBSERVACIONES
UltimaFila = ActiveSheet.UsedRange.Row - 1 + ActiveSheet.UsedRange.Rows.Count
Cells(UltimaFila + 1, 1) = CODIGO
With Cells(UltimaFila + 1, 2)
.NumberFormat = "#,##0"
.value = DNI
End With
Cells(UltimaFila + 1, 3) = NOMBRE
Cells(UltimaFila + 1, 4) = APELLIDO
Cells(UltimaFila + 1, 5) = CURSO
Cells(UltimaFila + 1, 6) = AÑOS
Cells(UltimaFila + 1, 7) = COND
Cells(UltimaFila + 1, 23) = OBSERVACIONES
For i = 8 To 22
If Cells(8, i) = MATERIA Then
Cells(UltimaFila + 1, i) = IIf(OptionButton1.value = True, Label10.Caption, Label11.Caption)
Exit For
End If
Next
TextCODIGO.value = WorksheetFunction.Max(Sheets("Datos").Columns("A")) + 1
'TextCODIGO = "" 'Significa borrar
TextDNI = "" 'Empty
TextNOMBRE = "" 'Empty
TextAPELLIDO = "" 'Empty
TextCURSO = "" ' Empty
TextAÑOS = ""
TextCOND = ""
TextMATERIA = "" 'Empty
TextOBSERVACIONES = ""
OptionButton2 = False
OptionButton2 = False
TextDNI.SetFocus
Me.ListBox1.RowSource = "BASE"
End Sub