Danke schon einmal für eure Hilfe. Vom letzten Mal habe ich schon gelernt, es gibt kein Crossposting meinerseits mehr.
Nun zu meinem Problem. Ich habe eine Userform wo die Nutzer einige Werte eingeben können. Jetzt ist das Problem wenn Sie den falschen Wert in die Dropbox eingeben fallen Sie in den Debugger rein und könnnen alles wieder schließen. Ich möchte das gerne verhindern weiß aber nicht wie. Mein Ansatz nach sehr vielem Suchen und probieren war dieser hier.
Private Sub Nummer1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Suchwert As String
Dim Wiedergabewert As String
Dim Hilfe As Boolean
Suchwert = Nummer1.Value
If Suchwert = "" Then Exit Sub
Hilfe = WorksheetFunction.Match(Suchwert, sheets("DropDown").[E:E])
If Hilfe = False Then
b = MsgBox("Die angegebene Nummer stimmt nicht mit der Datenbank überein", vbOKOnly)
Nummer1.SetFocus
Else
Wiedergabewert = WorksheetFunction.Index(sheets("DropDown").[D:D], WorksheetFunction.Match([ _
Suchwert], sheets("DropDown").[E:E], 0))
Exit Sub
End If
Produkt1.Value = Wiedergabewert
End Sub
Kann jetzt sein das es komplett falsch ist. Also ich dachte mir ich frage ab ob der Suchwert mit einem Wert im Arbeitsblatt Dropdown in Spalte E übereinstimmt. Ist das der fall dann gib True zurück. Ist das nicht der Fall dann False. In der If Schleife fragt er das dann ab und dann sollte entweder eine MsgBox kommen oder er soll in Produkt1.Value den entsprechenden Wiedergabewert eingeben. Das mit dem Wiedergabewert funktioniert auf jeden Fall wenn die eingegebene Nummer stimmt.
Hätte hier vlt jemand eine Idee? Bin für jede Hilfe dankbar.