ich habe mir in den letzten Tage unter Zuhilfenahme des Internets eine umfangreiche Excel-Datei mit einigen Makros aufgebaut. Ich habe eigentlich zu allen Problemen die sich mir stellten eine Lösung oder zumindest einen Ansatz gefunden. Nun stecke ich allerdings tatsächlich fest.
Folgende Problematik ergibt sich aktuell bei mir:
Über ein Makro werden Daten aus verschiedenen Sheets in ein anderes Sheet eingefügt (Transpondernummer, Name, Datum, Uhrzeit,...). Das funktioniert soweit alles auch aller bestens.
Nun möchte ich per VBA verhindern, dass in dem Ziel-Sheet doppelte Einträge eingefügt werden.
Das habe ich folgendermaßen hinbekommen:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Bereich As Range
Set Bereich = Range("A1:A9999")
If Target.Cells.Count > 1 Then Exit Sub
If Target.Value = "" Then Exit Sub
If Intersect(Bereich, Target) Is Nothing Then Exit Sub
If WorksheetFunction.CountIf(Bereich, Target.Value) > 1 Then
MsgBox ("Doppelter Eintrag festgestellt")
Application.EnableEvents = False
Target.Value = ""
Application.EnableEvents = True
Target.Select
End If
End Sub
Wie gesagt, das funktioniert soweit tadellos. Sobald eine doppelte Transpondernummer versucht wird einzufügen (Diese stehen eben in der Spalte A), erscheint meine kleine Fehlermeldung.Gibt es aber vielleicht eine Möglichkeit, diesen Code soweit anzupassen, dass ich Ausnahmen einbauen kann.
Bevor die Exceleigene Datenüberprüfung erwähnt wird; Diese habe ich bereits versucht zu verwenden, allerdings scheint diese bei per Makro eingefügten Datensätzen nicht zu greifen.