Meerdere IFF functies in expressie

Status
Niet open voor verdere reacties.

2010Peter

Gebruiker
Lid geworden
29 okt 2010
Berichten
15
Ik heb een query en in deze query heb ik meerdere tekstvelden (veld A, veld B, veld C en veld D). Als veld D een waarde bevat dan moet deze waarde in veld E worden weergegeven ongeacht of veld A, B en C een waarde hebben. Als veld D geen waarde heeft maar veld C wel dan moet deze waarde in veld E worden weergegeven ongeacht of veld A en B een waarde hebben. Als veld D en C geen waarde hebben maar veld B wel dan moet deze waarde in veld E worden weergegeven ongeacht of veld A een waarde heeft. Als veld D, C en B geen waarde hebben maar veld A wel dan moet deze waarde in veld E worden weergegeven. Als er helemaal geen waarden staan weergegeven in veld A, B, C en D dan moet er geen waarde worden weergegeven in veld E. Ik wil dit graag oplossen met meerdere IFF functies in een expressie. Weet iemand hoe ik dit moet oplossen en hoe de opbouw van meerdere IFF functies is.
 
Een IIF heeft dezelfde opbouw als een IF: Vergelijking - Waarde als Waar, Waarde als Onwaar. Je begint dus met een vergelijking te maken op het veld dat de hoofdlijn bepaalt. Veld D. Je kijkt bijvoorbeeld of dat veld leeg is of niet. Op basis daarvan bepaal je de volgende stap. Als het veld leeg is, laat ik in eerste instantie het veld leeg, anders de waarde van veld D.
Code:
IIF([D] Is Null;"";[D])
Je wilt, als D leeg is, kijken of er een waarde in C staat. Dat is ook weer een eigen IIF functie: IIF([C] Is Null;"";[C]) Deze moet je laten uitvoeren als D leeg is, dus dan krijg je dit:
Code:
IIF([D] Is Null;IIF([C] Is Null;"";[C]);[D])
In de volgende variant pak je veld B erbij: de IIF die je nu maakt, kijktof B leeg is of niet. En hetzelfde voor A. De totale formule ziet er dus zo uit:
Code:
IIF([D] Is Null;IIF([C] Is Null;IIF([B] Is Null;IIF([A] Is Null;"";[A]);[B]);[C]);[D])
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan