Te gecompliceerde iif-functie

Status
Niet open voor verdere reacties.

sophierve

Gebruiker
Lid geworden
11 sep 2009
Berichten
42
Hallo allen,

Ik heb een probleempje met een iff-functie: volgens access is deze namelijk te gecompliceerd.

Momenteel is het zoiets als dit:
=IIf([Categorypub]=110;"100";IIf([Categorypub]=120;"2000";IIf([Categorypub]=130;"4000";IIf([Categorypub]=140;"900";IIf([Categorypub]=150;"100";IIf([Categorypub]=160;"450";IIf([Categorypub]=165;"5000";IIf([Categorypub]=170;"2500";IIf([Categorypub]=180;"3000";IIf([Categorypub]=190;"4250";IIf([Categorypub]=999;"500")))))))))))

Deze werkt nog, maar als ik meerdere iif-statements wil invoeren lukt het niet meer. Is hier een oplossing voor?

Ik heb dit op deze manier gedaan om het budget weer te geven per categorie. Dus als de categorie 180 is, zou ik graag willen dat op het invul-formulier onmiddelijk het budget komt te staan, en dus de gebruiker dit niet elke keer hoeft op te zoeken. Wellicht is er een andere manier voor die jullie logischer lijkt?

Alvast bedankt!

Mvg,

Sophie
 
Je kunt het eens met Switch proberen, dan kun je wat meer.

Switch([Categorypub]=110;"100";[Categorypub]=120;"2000";[Categorypub]=130;"4000")

En het is ook overzichtelijker.

In een IIF kun je maximaal 7 nestjes bouwen, daarna is het op. Zoals je al gezien had, zit je daar goed boven.
In jouw geval is er nog wel een truc die je kunt gebruiken, omdat je een validatie doet op een getalwaarde. Als je niet op een exacte waarde begint, maar halverwege, kun je zowel in de Waarde-Als-Waar variant 6 variaties testen, als ook in de Waarde-Als-Niet-Waar.

Ziet er ongeveer zo uit:

IIf([Categorypub]>151;IIf([Categorypub]=165;"5000";IIf([Categorypub]=170;"2500";IIf([Categorypub]=180;"3000";IIf([Categorypub]=190;"4250";IIf([Categorypub]=999;"500")))));IIf([Categorypub]=110;"100";IIf([Categorypub]=120;"2000";IIf([Categorypub]=130;"4000";IIf([Categorypub]=140;"900";IIf([Categorypub]=150;"100";IIf([Categorypub]=160;"450"))))));"450"))

Deze overigens niet klakkeloos sleuren en pleuren, want ik heb nauwelijks gecheckt of het aantal haakjes wel klopt.... Je ziet zo ook wel, dat het niet heel erg overzichtelijk is, in tegenstelling tot de Switch variant.
 
Wat dacht je van een keuzeijst en een tekstveld in een formulier dat wordt gevuld met het budget dat bij een kategorie hoort ;)
Wel even een aparte tabel gebruiken om budgetten aan kategorieen te hangen.

Kortom, je batterij met IFF's is niet logisch en onpraktisch.

Grtz,

Tardis
 
Wellicht de omslachtige manier, maar toch die van Octafish gebruikt :)

Maar toch nog een vraagje:

Ik heb de Switch-formule nu als control source gebruikt. Op het formulier geeft hij de waarde juist aan, maar in de tabel slaat hij de waarde niet op. Hier heel toevallig nog een oplossing voor? Zou top zijn! :)

Bedankt in ieder geval!
 
Laatst bewerkt:
Uit jouw oorspronkelijke vraag:
>Wellicht is er een andere manier voor die jullie logischer lijkt?
Gebruik een hulptabel, met b.v. velden Category en Budget
100 160
110 100
120 2000
130 4000

>Ik heb de Switch-formule nu als control source gebruikt
Om een waarde op te slaan in de tabel moet het besturingselementbron een veld uit de tabel zijn.
Bij gebruik van een hulptabel, hoef je die waarde niet op te slaan. Je kunt deze immers via een query ophalen.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan