Velden vergelijken/meerdere condities

Status
Niet open voor verdere reacties.

Profilers

Nieuwe gebruiker
Lid geworden
6 mei 2016
Berichten
4
Hallo mede forummers,

Af en toe word mij gevraagd iets te "programmeren" in samenvoegbestanden in Word. En jullie raden het al, momenteel hang ik daarmee vast...

Stel, je hebt een schoolrapport van een leerling, en je wil dat er een standaard opmerking (bijv. Leerling scoort gemiddeld) geplaatst wordt als alle vakken in het gemiddelde (rode) gebied vallen (in dit geval de cijfers 5, 6 en 7). Hoe pak je dit dan aan?

Ter illustratie: Voorbeeld1.png

De velden hebben de naam van de schoolvakken, en deze worden heel simpel gevuld door de code:
Code:
{ IF { MERGEFIELD Nederlands } = 7 "X" "" }

Het dient te werken onder Word versie 2003. :eek:

Bij voorbaat dank!
 
Laatst bewerkt:
Doe er eens een voorbeeldje bij, want je hebt een behoorlijk ingewikkelde formule nodig om dat te maken. En ik heb met dit weer geen zin om dan zelf de benodigde brondata te moeten maken :).
 
Heb ik nu zo moeilijk liggen denken, of zie ik toch nog het een en ander over het hoofd...

Heb het probleem voor mezelf eens vereenvoudigd, en ben tot de volgende formule gekomen:
Code:
{ IF { = { IF { MERGEFIELD Nederlands } > "4" 1 0 } * { IF { MERGEFIELD Nederlands } < "8" 1 0 } * { IF { MERGEFIELD Engels } > "4" 1 0 } * { IF { MERGEFIELD Engels } < "8" 1 0 } * { IF { MERGEFIELD Duits } > "4" 1 0 } * { IF { MERGEFIELD Duits } < "8" 1 0 } * { IF { MERGEFIELD Frans } > "4" 1 0 } * { IF { MERGEFIELD Frans } < "8" 1 0 } } = 1 "Leerling scoort gemiddeld." "" }
En het grappige is dat hij nog werkt ook! Had me de formule veel complexer voorgesteld, dus vraag me toch af of ik niet iets over het hoofd zie?
Misschien kan het nog "netter/beter"?
 
Netter zou bijvoorbeeld zo kunnen:
Code:
{ IF { =  
{ IF { MERGEFIELD Nederlands } > "4" { IF { MERGEFIELD Nederlands } < "8" 1 0 } 0 } * 
{ IF { MERGEFIELD Engels } > "4" { IF { MERGEFIELD Engels } < "8" 1 0 } 0 } * 
{ IF { MERGEFIELD Duits } > "4" { IF { MERGEFIELD Duits } < "8" 1 0 } 0 } * 
{ IF { MERGEFIELD Frans } > "4" { IF { MERGEFIELD Frans } < "8" 1 0 } } 0 } = 1 "Leerling scoort gemiddeld." "" }
Maar ik vind hem redelijk ingewikkeld voor Word :). Zeker omdat je cijfers vermoedelijk uit Excel komen, en je de formule daar natuurlijk veel makkelijker kan maken.
 
Maar ik vind hem redelijk ingewikkeld voor Word :). Zeker omdat je cijfers vermoedelijk uit Excel komen, en je de formule daar natuurlijk veel makkelijker kan maken.
Simpel is anders inderdaad...
Nee helaas, de databron is een Access database... vandaar ;)
 
Nee helaas, de databron is een Access database... vandaar ;)
Nog veel mooier :D. Dan is het namelijk helemaal geen probleem om een nette export te maken! Ik dacht dat je aan het pruttelen was met een lelijk eendje (Excel), maar je hebt een Ferrari tot je beschikking :).
 
Dan is het namelijk helemaal geen probleem om een nette export te maken!
Klopt, maar het totaalplaatje zit toch wat ingewikkelder in elkaar dan hier voorgesteld. Een export maken zou onnodig veel handelingen toevoegen aan de procedure. Er wordt via een VB programma steeds een nieuwe tabel in een database gecreëerd met daarin een selectie... en dat is de uiteindelijke databron. Complex verhaal, maar goed... mijn probleem is opgelost! :)
 
Je mag de vraag nog op <Opgelost> zetten :).
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan