Testen op true/false

Status
Niet open voor verdere reacties.

linkav

Gebruiker
Lid geworden
13 jun 2007
Berichten
465
Beste forum-gebruikers,

Er is mij gevraagd om een wijziging uit te voeren in 'oude' acces-programma. De klant werkt met Office 2016 (32-bits)

Na het aanbrengen van wijzigingen lopen bepaalde programma/rapporten niet goed meer.

Wat merk ik op dat er in de code volgende regel staat:
Code:
=[Methode] & IIf([Labo]="Test" Or [Labo]="Test1";IIf([Accred]=Ja;" (**)";"");IIf([Accred]=Ja;" (E**)";" (E)"))

en de test op ja werkt niet zoals het zo moeten zijn. Na het wijzigen van ja in true werkt alles terug perfect.
Code:
=[Methode] & IIf([Labo]="Test" Or [Labo]="Test1";IIf([Accred]=True;" (**)";"");IIf([Accred]=True;" (E**)";" (E)"))

Er is geen constante 'ja' gedefinieerd.

Verder kwam ik in de code ook nog de test op No en Yes tegen.

Werkte deze testen vroeger wel?

Ik kan de vba code gemakkelijk doorlopen met met de zoek-functie, maar het is moeilijker om deze vergelijkingen te vinden in velden op rapporten en formulieren.

Heeft er iemand een suggestie hoe ik dit probleem aanpak?

Graag hoor ik van jullie.
 
Nog een voorbeeldje van een stukje code
Code:
        fil = gemeen & " and [DigHandt] like no and [ControleDoorStaf] like no and [Controle nieuwe klant] like no and [Wanbetaler] like no"

en
Code:
fil7 = gemeen & " and [DigHandt] like yes and [ControleDoorStaf] like no"
 
Er is geen constante 'ja' gedefinieerd.
Dat hóeft ook helemaal niet. Het is eigenlijk heel simpel: een Ja/Nee veld kent twee waarden. En die staan niet in je vraag, en ook nog niet in de antwoorden :). De opgeslagen waarden zijn 0 en -1. Je kunt die nog vervangen door twee tekstvarianten, die (in code) altijd Engelstalig zijn. Dan krijg je dus deze opties:
Code:
=[Methode] & IIf([Labo]="Test" Or [Labo]="Test1";IIf([Accred]=-1;" (**)";"");IIf([Accred]=-1;" (E**)";" (E)"))
=[Methode] & IIf([Labo]="Test" Or [Labo]="Test1";IIf([Accred]=True;" (**)";"");IIf([Accred]=True;" (E**)";" (E)"))
=[Methode] & IIf([Labo]="Test" Or [Labo]="Test1";IIf([Accred]=Yes;" (**)";"");IIf([Accred]=Yes;" (E**)";" (E)"))

En meer smaken zijn er niet.
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan