Ich bin am verzweifeln. Ich kann mir nicht helfen aber irgendetwas läuft jetzt total schief. Die Funktion hat funktioniert. Nachdem ich dieses Excel Sheet und die Userformen erweitert habe funktioniert es nicht mehr.
Wenn ich etwas falsches eingebe dann macht er ohne Probleme die MsgBox auf. Problem ist, dass er mich in den Debugger schickt wenn er die zweite ansprechen sollte.
Ich möchte zum Suchwert den passenden Wiedergabewert finden. Hierfür habe ich im Worksheet DropDown zwei Spalten D und E. In D steht ein Text und in E steht eine Zahl.
If Suchwert = "" Then Exit Sub
If WorksheetFunction.CountIf(Worksheets("DropDown").Range("E:E"), Suchwert) > 0 Then
Wiedergabewert = WorksheetFunction.Index(Sheets("DropDown").[D:D], WorksheetFunction.Match([ _
_
Suchwert], Sheets("DropDown").[E:E], 0))
Else
MsgBox "Suchwert ist nicht vorhanden."
End If
Ich habe nichts an diesem Konstrukt geändert seitdem ich damit arbeite. Ich habe zwei solcher Abfragen und zu Beginn hatte ich bei der ersten die zweite If Abfrage nicht dabei da bin ich dann in den Debugger gefallen wenn man eine falsche Zahl eingegeben hat, daher die zweite If. Aber wie gesagt es funktionierte damals auch mit der zweiten If. Ich kann mir nicht mehr weiterhelfen. Vlt hat einer von euch eine Idee was ich tun könnte. Die Variante ohne zweites If
Private Sub Nummer2_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Dim Suchwert As String
Dim Wiedergabewert As String
Dim Zeile
Suchwert = Nummer2.Value
If Suchwert = "" Then Exit Sub
Wiedergabewert = WorksheetFunction.Index(sheets("DropDown").[D:D], WorksheetFunction.Match([ _
_
Suchwert], sheets("DropDown").[E:E], 0))
Produkt2.Value = Wiedergabewert
End Sub