Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1904to1908
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Duplikatsprüfung

Duplikatsprüfung
15.11.2022 08:46:07
Dieter
Hallo liebe Forumsgemeinde!
Ich habe eine Intelligente Tabelle in welche ich mittels Userform Daten eintrage. Ich möchte nun eine Duplikatsprüfung haben, bei der mit auf der einen Seite der vorhandene Datensatz in einer Message Box ausgegeben wird und andererseits die Eingabe bei Duplikaten abgebrochen wird und nichts in die Tabelle eingetragen werden kann.
Ich danke für eure Hilfe.

14
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Duplikatsprüfung
15.11.2022 09:12:17
Oberschlumpf
Hi Dieter
und bitte wer malt für dich eine Bsp-Datei?
Ich habs! Kannst nich du per Upload eine Bsp-Datei mit Bsp-Daten mit Userform mit Code zeigen?
Ciao
Thorsten
AW: Duplikatsprüfung
15.11.2022 09:28:07
Dieter
Hier meine Beispiel Datei.
Mit dem Formular möchte ich die Einträge erstellen. Es soll nach Adresse in Verbindung mit der Hausnummer geprüft werden ob es diesen Eintrage bereits gibt. Ist der Eintrag bereits vorhanden, so soll keine Neuanlage erfolgen.
Danke für die Hilfe
https://www.herber.de/bbs/user/156185.xlsm
AW: Duplikatsprüfung
15.11.2022 11:31:43
Rudi
Hallo,
Es soll nach Adresse in Verbindung mit der Hausnummer geprüft werden ob es diesen Eintrage bereits gibt.
Es wird also nur 1x gelöscht?
Wenn's nochmal brennt, ist's Pech. ;-)
Gruß
Rudi
Anzeige
AW: Duplikatsprüfung
15.11.2022 11:35:09
Dieter
Die Tabelle ist für Unwettereinsätze gedacht. D.H. die Einsätze gibt es Grundsätzlich nur ein Mal. Für das nächste Unwetter wird die Tabelle wieder auf null gestellt.
AW: Duplikatsprüfung
15.11.2022 11:57:27
Rudi
Hallo,

Private Sub CmBEinsatzSpeichern_Click()
Dim neueZeile As Long
Dim vntAdresse, i As Integer
Call Einsatz_Unprotect
'Prüfung ob alle Felder befüllt sind
If TextBoxName.Value = "" Or TextBoxNummer.Value = "" Or ComboBoxAdresse.Value = "" Then
MsgBox "Bitte alle Pflichtfelder befüllen!", , ""
Exit Sub
End If
'Adresse prüfen
With Einsatzübersicht
vntAdresse = .Range(.Cells(10, 14), .Cells(Rows.Count, 14).End(xlUp)).Resize(, 2)
For i = 1 To UBound(vntAdresse)
If Join(Array(vntAdresse(i, 1), vntAdresse(i, 2)), "|") = Join(Array(ComboBoxAdresse, TextBoxHN), "|") Then
MsgBox "Adresse bereits vorhanden!", , "gebe bekannt..."
Exit Sub
End If
Next i
End With
'Daten in TAbelle übernehmen
With Einsatzübersicht
neueZeile = .Cells(Einsatzübersicht.Rows.Count, 11).End(xlUp).Row + 1
.Cells(neueZeile, 11).Value = TextBoxID.Value
.Cells(neueZeile, 12).Value = TextBoxName.Value
.Cells(neueZeile, 13).Value = TextBoxNummer.Value
.Cells(neueZeile, 14).Value = ComboBoxAdresse.Value
.Cells(neueZeile, 15).Value = TextBoxHN.Value
.Cells(neueZeile, 16).Value = Now
.Cells(neueZeile, 17).Value = Date
.Cells(neueZeile, 18).Value = ComboBoxEA.Value
.Cells(neueZeile, 19).Value = ComboBoxEUA.Value
.Cells(neueZeile, 20).Value = TextBoxSachverhalt.Value
.Cells(neueZeile, 38).Value = ComboBoxEinbringer.Value
End With
Call Einsatz_Blattschutz
'Userform schließen
Unload Me
End Sub
Gruß
Rudi
Anzeige
AW: Duplikatsprüfung
15.11.2022 09:22:39
Daniel
HI
füge der Intelligenten Tabelle eine Spalten hinzu, in welcher du per Formel alle Werte, die für die Duplikatsprüfung relevant sind, zu einem Gesamttext verkettest, am besten mit einem Trennzeichen.
bevor du dann den neu eingegebenen Datensatz aus der Userform in die Tabelle schreibst, verkettest du ebenfalls alle Textboxen, die für die Duplikatsprüfung relevant sind, ebenfalls zu einem Gesamttext. Achte darauf, dass du das gleiche Trennzeichen und dieselbe Reihenfolge verwendest wie in der zusätzlichen Spalte.
dann kannst du mit ZählenWenn einfach prüfen, ob der Datensatz schon vorhanden oder neu ist

IF Worksheetfunction.Countif(NeueSpalte, ZusammengefügteTextboxwerte) = 0 then
hier der Code für das hinzufügen des neuen Datensatzes
Else
hier ausgeben der Warnmeldung
End if
Gruß Daniel
Anzeige
AW: Duplikatsprüfung
15.11.2022 09:39:10
Dieter
Danke Daniel für deine Antwort.
Ich bin leider in VBA völlig unbeholfen. Ich verstehe zwar die Vorgehensweise, kann es jedoch nicht in einem VBA Code ausdrücken.
Vielleicht kannst du mir noch etwas weiter helfen. Die Beispieldatei habe ich bereits hochgeladen.
Danke für deine Hilfe
AW: Duplikatsprüfung
15.11.2022 09:43:26
Daniel
dann wirds aber schwierig mit dem Erstellen einer Userform.
wenn du keine Ahnung von VBA hast, würde ich von sowas die Finger lassen.
Behalte die Verkettungsspalte und lege eine Bedingte Formatierung an mit der Regelformel:

=ZählenWenn(Verkettungsspalte;AktuelleZelle in Verkettungsspalte)>1
dann werden dir Duplikate in der Liste rot markiert.
Gruß Daniel
Anzeige
AW: Duplikatsprüfung
15.11.2022 09:49:50
Oberschlumpf
wenn du keine Ahnung von VBA hast, würde ich von sowas die Finger lassen.
=falscher Ansatz!
DAniel, wie soll Dieter dann VBA (kennen)lernen?
Wenn jemand den Führerschein machen will, setzt er sich auch hinters Steuer, startet und fährt los! (obwohl vorher NOCH NIE Auto gefahren!)
Und jetzt kommst du und sagst: LOS! Steig sofort wieder aus! Du kannst das nicht - dann mach es auch nicht!
ähh...echt?
Dieter, ich versuch mein Glück mal mit deiner Datei...aber gedulde dich, ich werd das nich in 1 oder 2 Stunden schaffen, muss noch einiges anderes machen.
Ciao
Thorsten
Anzeige
AW: Duplikatsprüfung
15.11.2022 09:55:27
Dieter
Danke lieber Thorsten!
Ich bin noch am lernen.
AW: Duplikatsprüfung
15.11.2022 11:55:47
Oberschlumpf
Hi Dieter
ging doch alles viel schneller als ich dachte.
hier, teste mal
https://www.herber.de/bbs/user/156189.zip
zuerst ZIP-Datei entpacken, ERST DANN Excel-Datei starten!
(ich musste die Exceldatei "verzippen", weil sie für den Upload zu groß wurde)
So, vor meinen Erklärungen noch ne andere Info:
hier, guckst du...
Userbild
In deiner Bsp-Datei ist ein Selenium-Verweis gesetzt.
Ich hab aber nicht die erforderliche Selenium-TLB-Datei.
Aus dem Grund musste ich den Verweis entfernen.
Wenn du diesen Verweis benötigst, musst du ihn bei Nutzung meiner Datei wieder setzen.
nun zu meinem Vorgehen
1. direkt in den Klassenmodulen für Userform "EinsatzAnlegen" hab ich dort, wo ich Code hinzufügte, dies mit den Hinweisen "'Start mein Code" + "'Ende mein Code" kenntlich gemacht
2. alles an weiteren Code hab ich in das neu hinzugefügte allgemeine Modul "Oberschlumpf" eingetragen
3. so, wenn du nun in Tabelle "Einsatzübersicht" auf den +-Button klickst, damit sich das Userform "EinsatzAnlegen" öffnet, wird direkt nach dem Öffnen des Userforms eine Arrayvariable angelegt, die alle Strassennamen mit ihren Hausnummern enthält
4. sowohl bei Eingabe/Änderung in ComboBox "ComboBoxAdresse" (Strasse) als auch bei Eingabe/Änderung in TextBox "TextBoxHN" wird geprüft, ob diese Adresse schon in der Tabelle enthalten ist
5. wenn JA, erscheint per NsgBox ein Hinweis und Hausnr wird wieder gelöscht
6. wenn NEIN, werden alle Daten aus Userform in Tabelle als neuer Datensatz eingetragen
Konnte ich helfen?
Ciao
Thorsten
Anzeige
AW: Duplikatsprüfung
15.11.2022 12:01:38
Dieter
Danke damit hast du mir sehr weiter geholfen.
AW: Duplikatsprüfung
16.11.2022 09:45:13
Dieter
Guten Morgen Thorsten!
Ich muss nochmals deine Hilfe in Anspruch nehmen. Dein erster Code funktioniert bestens. Danke nochmals dafür.
Nun liegt mein Problem darin, dass ich in der Spalte B-H über eine Wennfunktion mir die eingesetzten Fahrzeuge anzeigen lasse, wenn ein Einsatz in Bearbeitung ist. Wenn der Einsatz auf abgearbeitet gestellt wird verschwindet das Fahrzeug wieder aus der Zeile. Nun möchte ich gerne eine msgBox, worin mir der doppelte Wert angezeigt wird, haben, welche mir anzeigt, dass ich ein Fahrzeug zweimal bei einem Einsatz eingetragen habe. Das kann vorkommen, wenn der vorangegangene Einsatz noch nicht beendet wurde, jedoch der Nächste Einsatz für das Fahrzeug schon auf Bearbeitung gestellt wird.
Danke für deine Mühen
lg Dieter
Anzeige
AW: Duplikatsprüfung
16.11.2022 10:10:04
Oberschlumpf
Hi,
a) sorry, ich verstehe kein Wort
b) da es sich ja um eine neue Frage handelt, würde ich dir empfehlen, auch einen neuen Beitrag zu erstellen.
Ciao
Thorsten

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige