Duplikat suche bei Userform Eintrag

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
UserForm MsgBox
Bild

Betrifft: Duplikat suche bei Userform Eintrag
von: Kösler
Geschrieben am: 27.04.2015 11:59:15

Hallo Zusammen ich habe eine If abfrage mit zwei kriterien um nach duplikaten in einer Datenbank zu suchen, einzel ( also entwerder Vorname oder Nachname) funktioniert diese auch.
Gemeinsam also beides geht dies leider nicht mehr.
Bitte um Hilfe.
' Überprüfung ob Kunde bereits vorhanden!
Dim WkSh As Worksheet
Dim rZelle As Range
Set WkSh = ThisWorkbook.Worksheets("Kundendaten")
If (Me.txtName.Value) & (Me.txtVorname) <> "" Then
With WkSh.Columns("B:C")
Set rZelle = .Find(Me.txtName.Value & Me.txtVorname.Value, LookAt:=xlWhole, LookIn:=xlValues)
If Not rZelle Is Nothing Then

frmAchtung.Show
GoTo LastLine
End If
End With
Else

End If

Bild

Betrifft: AW: Duplikat suche bei Userform Eintrag
von: Daniel
Geschrieben am: 27.04.2015 12:25:43
Hi
um zu überprüfen, ob in der Liste ein solcher Eintrag existiert, kannt du besser Worksheetfunction.countIfs verwenden:

if Worksheetfunction.CountIfs(wksh.columns(2), me.txtName, wksh.Columns(3), me.txtVorname) = 0 
Then
    Msgbox "Kombination ist in Liste nicht vorhanden
Else
    Msgbox "Kombination in Liste vorhanden
end if

.FIND dursucht immer nur eine Zelle, aber keine Kombinationen von Zellen.
dein Konstrukt durchsucht die Spalten B und C und findet einen Treffer in einer Zelle der beiden Spalten die Zeichenfolge "NachameVorname" steht, das wird aber nie der Fall sein, weil du Nachname und Vorname in zwei Spalten aufgetrennt hast.
wenn du mit .Find arbeiten willst, solltet du in einer Hilfsspalte Nach- und Vorname per Formel zu einem Wort zusammenfassen und ann in dieser Hilfsspalte suchen.
Gruß Daniel

Bild

Betrifft: AW: Duplikat suche bei Userform Eintrag
von: Kösler
Geschrieben am: 27.04.2015 12:56:49
Hi Daniel,
danke für deine schnelle Antwort.
Ich hab leider keine Ahnung wie die Programmierung zu ändern ist um das hinzubekommen.
als VBA Neuling bräuchte ich bitte weiter Hilfe
Gruß Chris

Bild

Betrifft: AW: Duplikat suche bei Userform Eintrag
von: Daniel
Geschrieben am: 27.04.2015 13:02:04
Hi
ich auch nicht.
weil ich weder deine Datei, noch deine Aufgabenstellung kenne.
Versuche zu verstehen, was da passiert (ist ja nicht so schwer, ist im Prinzp die Funktion ZählenWenns in VBA angewendet) und baue es dann ein (was bisher in deinem Code passiert, solltest du ja sowieso verstehen).
Gruß Daniel

Bild

Betrifft: AW: Duplikat suche bei Userform Eintrag
von: Rudi Maintaire
Geschrieben am: 27.04.2015 13:02:57
Hallo,
meine Version:

  Dim WkSh As Worksheet
  Dim vArr, i As Long
  
  Set WkSh = ThisWorkbook.Worksheets("Kundendaten")
  
  If (Me.txtName.Value) & (Me.txtVorname) <> "" Then
    With WkSh
      vArr = .Range(.Cells(1, 2), .Cells(.Rows.Count, 2).End(xlUp)).Resize(, 2)
      For i = 1 To UBound(vArr)
        If vArr(i, 1) & vArr(i, 2) = Me.txtName & Me.txtVorname Then
          frmAchtung.Show
          GoTo LastLine
        End If
      Next i
    End With
  End If
Mit GoTo würde ich nicht arbeiten.
Gruß
Rudi

Bild

Betrifft: AW: Duplikat suche bei Userform Eintrag
von: Kösler
Geschrieben am: 27.04.2015 13:25:20
Hallo Rudi,
Danke für deine Hilfe nun klappt es.
Gruß Chris

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Duplikat suche bei Userform Eintrag"