Diese Codezeile wird nicht bewerten:Application.Eval() arbeitet nicht mit Ausdruck
If(StrComp(Left("Campaign", 5), "IMS :") = 0
Ich verwende es wie folgt aus:
strHolder = "If(StrComp(Left("Campaign", 5), "IMS :") = 0"
myVar = Application.Eval(strHolder)
Dies ist der Fehler, den ich ‚m Aufnahme:
Run-time error '2425': The expression you entered has a function name that Microsoft Access can't find.
Ich vermute, dass Application.Eval
nicht lesen können entweder die If
, StrComp
oder Left
nicht sicher, was hier zu tun, und ich kann nicht viel in die Tiefe gehende Informationen über die Eval
Methode finden.
Danke für die Antwort. Also .. ich habe schon eine Weile damit gespielt. Sie hatten recht viele Syntaxfehler, aber nicht alle. 1. Verdoppelung der Zitate funktionierte nicht - nicht sicher, warum, aber am Ende brauchte ich einfache Anführungszeichen. 2. Das Entfernen der if-Anweisung und das Bewerten auf eine bool-Variable war der Schlüssel zum Erfolg (ziemlich genau das, was Sie hier getan haben). Gibt es eine Syntax, um eine komplette IF-Anweisung korrekt aus einer Zeichenfolge auszuwerten? –
Nicht sicher. Haben Sie ein Beispiel für eine vollständige "If" -Anweisung, die Sie mit 'Eval()' bewerten möchten? – HansUp
'If (StrComp (Links (" Campaign ", 5)," IMS: ") Dann Return someValue 'Nicht sicher, wie das zu tun ist. –