Eine Familie von Microsoft-Tabellenkalkulationsprogrammen mit Tools zum Analysieren, Darstellen und Vermitteln von Daten.
Das Problem konnte inzwischen mithilfe von Reddit r/vba gelöst werden. Die Lösung ist relativ interessant:
VBA akzeptiert die deutsche Schreibweise der Formel XVERWEIS nicht. Übergibt man stattdessen die Formel "=XLOOKUP(..)", mit Kommata statt Semikolons wohlgemerkt, so funktioniert es. Excel übersetzt daraufhin die Formel in der Datenüberprüfung zurück in's Deutsche, sodass schlussendlich exact der String in der Quelle steht, den VBA ursprünglich zurückgewiesen hat.
Der funktionierende Code lautet nun:
Private Sub conf_Validation(Target_Cell)
Set WS = Tabelle1
Set trg = WS.Range(Target_Cell)
' frm_1 = "=XVERWEIS(C35;Daten!B16:F16;Daten!B17:F18)"
frm_1 = "=XLOOKUP(C35,Daten!B16:F16,Daten!B17:F18)"
With trg.Validation
.Delete
.Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _
xlBetween, Formula1:=frm_1
.IgnoreBlank = True
.InCellDropdown = True
.InputTitle = ""
.ErrorTitle = ""
.InputMessage = ""
.ErrorMessage = ""
.ShowInput = True
.ShowError = True
End With
End Sub