Hallo Michael,
CASE ... WHEN ... END ?
Soweit ich weiß, unterstützt Microsoft Access _nicht_
CASE ... WHEN ... END,
JetSQL, der SQL-Dialekt der JetEngine, dem Datenbankmanagementsystem hinter MS Access hat mit Transact-SQL, dem SQL-Dialekt des MS SQL-Server nichts zu tun.
Du kannst aber
IIf(<ausdruck1>, <ausdruck2>, <ausdruck3>)
verwenden. Die durchaus sehr gute Online-Hilfe von Microsoft Access weiß mehr über IIf() und noch viel mehr über JetSQL, ich zitiere:
<zitat quelle="MS Access Onlinehilfe">
IIf (Funktion)
Gibt einen von zwei Teilen zurück, abhängig von der Auswertung eines Ausdrucks.
Syntax
IIf(expr, truepart, falsepart)
Die Syntax der IIf-Funktion besteht aus folgenden benannten Argumenten:
Argument Beschreibung
expr Erforderlich. Der auszuwertende Ausdruck.
truepart Erforderlich. Der zurückgegebene Wert oder Ausdruck, wenn expr den Wert True ergibt.
falsepart Erforderlich. Der zurückgegebene Wert oder Ausdruck, wenn expr den Wert False ergibt.
Hinweise
IIf wertet immer sowohl den Teil truepart als auch den Teil falsepart aus, auch dann, wenn nur einer von beiden Teilen zurückgegeben wird. Aus diesem Grund kann es zu unerwünschten Nebeneffekten kommen. Wenn z. B. die Auswertung von falsepart zu einem Fehler aufgrund einer Division durch Null führt, tritt ein Fehler auch dann auf, wenn expr den Wert True hat
</zitat>
Du solltest sie benutzen :-)
Freundliche Grüße
Vinzenz