criteria voo query met form

Status
Niet open voor verdere reacties.

anlag1

Gebruiker
Lid geworden
31 okt 2010
Berichten
144
Hallo allemaal,
heb een query die werkt op basis van een criteria welke in een form wordt opgegeven.
heb onderstaande regel opgebouwd in het veld crieria:

IIf([Forms]![frm_swap_connections]![equip]="show";[WIRENO];Left([WIRENO];1)<>"#")

wanneer de vergelijking waar is werkt de query naar behoren.
wanneer de vergelijking onwaar is, is de query leeg, dit terwijl als ik alleen onderstaande functie opbouw in het veld criteria:

Left([WIRENO];1)<>"#"

de query correct werkt.
zal iets verkeerd doen, zie allen niet wat
Gr.
Andre
 
Wat wil je hier (Left([WIRENO];1)<>"#") mee bereiken? Je maak een extra vergelijking, die True of False oplevert, en niet het eerste teken van WIRENO
 
Laatst bewerkt:
ik wil er het volgende mee bereiken:
in het veld WIRENO komen waarden voor die al dan niet vooraf gaan door een #.
bijv. 260,265 maar ook #260 en #265.
als de vergelijking waar is moet zowel 260,265 als # 260,#265 zichtbaar zijn in de query.
bij onwaar moeten alleen 260,265 zichtbaar zijn in de query.
Gr.
Andre
 
Da's te weinig informatie. Zowiezo moet je vermoed ik een tweede IIF maken, al weet ik dat pas zeker als ik weet hoe de gegevens in WIRENO zijn gekoppeld aan het veld [equip]. Je wilt iets laten zien op basis van dit veld; en wel als de waarde ervan 'show' is. Maar wat staat er in die gevallen in WIRENO? Kunnen daar zowel waarden 260,265 en #260 bij zitten? Of heb je, als je op 'show' filtert alleen maar waarden die met # beginnen, of juist het omgekeerde?
 
De tabel waar de query op wordt uitgevoerd bevat een veld [WIRENO]. Dit veld kan waarden bevatten zoals 260, 265 maar ook #260 en #265.
nu wil ik wanneer [equip] de waarde "show" bevat dat alle waarden uit het veld [WIRENO] worden getoond in de query. 260,265,#260,#265.
Wanneer [equip] de waarde "show" niet bevat, wil ik dat alleen de waarden zonder "#" worden getoond. alleen 260, 265.
Gr.
Andre
 
Dan is het zoals ik dacht:
Code:
Expr1: IIf([Forms]![frm_swap_connections]![equip]="show";[WIRENO];IIf(Left([WIRENO];1)=Chr(35);"";Mid([WIRENO];2)))
 
Michel,
Zoals je al suggereerde is hier blijkbaar een geneste IIf statement nodig, echter ik begrijp niet wat je hierin bedoeld met Mid([WIRENO];2).
In eerste instantie leverde jou oplossing geen verbetering op, maar na dat ik van de 2 een 1 had gemaakt werkt het geheel correct.
maar nog steeds blijft het mij onduidelijk, als ik Mid([WIRENO];1) vervang door [WIRENO] heb ik toch hetzelfde resultaat?
Gr.
Andr�
 
De reden van mijn formule (IIf(Left([WIRENO];1)=Chr(35);"";Mid([WIRENO];2)))) is (vind ik) best logisch: het #-teken is een beschermd symbool in Access; het wordt namelijk gebruikt in Datum notaties. Daarom doe ik een check op de ascii waarde ervan met Chr(35). Jammer genoeg werkt dat dus niet? Omdat het # teken het eerste teken is, wil je de tekst hebben die na het eerste teken, dus vanaf het tweede teken, begint. En die filter je met Mid([WIRENO];2) . Als dat niet werkt, dan komt dat doordat Access het teken als Datum notatie ziet, en intern niet meetelt. En dan levert Mid([WIRENO];1) dus het gewenste resultaat. Overigens zou dat hetzelfde moeten opleveren als [WIRENO]....
 
In eerste instantie leverde jou oplossing geen verbetering op, maar na dat ik van de 2 een 1 had gemaakt werkt het geheel correct.
maar nog steeds blijft het mij onduidelijk, als ik Mid([WIRENO];1) vervang door [WIRENO] heb ik toch hetzelfde resultaat?Andr�

Klopt.
Je kan [WIRENO] gebruiken.
OctaFish heeft eea anders begrepen dan jij bedoelt, mede gezien zijn laatste reaktie.
Vergeet die laatste reaktie van Octafish dus maar snel, die is niet relevant.

Tardis
 
Michel,
Het is mij duidelijk, v.w.b. het beschermde symbool "#" is het dus beter deze niet te gebruiken?
Gr.
Andre
 
Tardisje, wat ben je nog steeds een heerlijke kleuter.... Leg het verschil eens uit tussen mijn laatste regel: "Overigens zou dat hetzelfde moeten opleveren als [WIRENO]" en jouw "Je kan [WIRENO] gebruiken"... Zou je in het vervolg niet namens mij willen denken? Niet alleen kan ik dat zelf veel beter, ik wil jou eigenlijk niet in mijn hoofd hebben... En laten we het vooral over de relevantie van jouw bijdragen hebben!

@anlag1: Ik zou inderdaad als je de keuze hebt een ander symbool kiezen dan het # teken.
 
Heren, geen ruzie maken, ben weer uitstekend geholpen
Bedankt,
Gr.
Andre
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan