Waardering in sterren op een doorlopende query subform

Status
Niet open voor verdere reacties.

hausi

Gebruiker
Lid geworden
17 jan 2010
Berichten
84
Hoi,

Ik heb in Access een tabel "Recepten" met een veld "cRating" dat de waarden 1 t/m 5 kan bevatten.
Als ik een recept wil zoeken gebeurt dat d.m.v. een doorlopend formulier met een query die gebaseerd is op de tabel "Recepten"
De query werkt goed maar ik zou graag willen dat de waardering van het recept wordt aangegeven met afbeeldingen van sterren.
De waardering is dan afhankelijk van het veld "cRating" uit de tabel "Recepten".
Ik heb me 2 dagen suf gezocht maar krijg het niet werkend.
Het is belangrijk dat de query de resultaten presenteert als een doorlopend formulier en niet als een gegevensblad, op die manier kan ik de bijbehorende foto, en een korte beschrijving op een mooie manier presenteren.
Ik weet natuurlijk dat ik bij het invoeren van recepten eenvoudig een afbeelding van het aantal sterren kan invoegen maar ik heb op het invoer-formulier de omtrek van 5 sterren waarop ik kan klikken zodat het gewenste aantal sterren zichtbaar wordt en een waarde wordt toegekend aan het veld "cRating". Ik heb dat zo gedaan omdat ook anderen op een eenvoudige manier recepten kunnen invoeren...... en ik het mezelf moeilijk heb gemaakt:confused:

Ik hoop dat ik volledig genoeg ben geweest en iemand me op weg kan helpen.
Groeten,
Hans
 
Laatst bewerkt:
Hans,

Je zegt in je verhaal dat je al een omtrek van vijf sterren hebt en dat als je er op klikt het gewenst aantal sterren
zichtbaar wordt. Kun je hiervan een voorbeeld bestand maken en dat aan je vraag toevoegen?
Zonder een bestand kunnen we dit soort vragen niet beantwoorden, we kunnen wel van alles bedenken maar
als blijkt, dat dit nu net niet is wat je zoekt zijn we een uur voor niets bezig geweest.

Elsendoorn2134
 
Jij maakt lange dagen, want er staat nog niks ;). Maar als ik je vraag zo lees, is er wel een simpele oplossing, waarvoor je niet eens hoeft te programmeren. In welk geval je natuurlijk in het verkeerde forum zit, maar dat staat hier los van.
Als je cijfers opslaat in je tabelveld, kun je met de SWITCH formule die cijfers vervangen door een zelf gekozen waarde. En dat is je oplossing, want in een query kun je de cijfers vervangen door een of meer tekens. Het cijfer 1 vervang je door *, 2 door ** en zo verder. In je formulier maak je het tekstveld op in het lettertype WingDings of WebDings. Het * moet dan het teken zijn dat in het gekozen font het juiste sterretje geeft.
 
Ik heb de database ingepakt en wil hem bijvoegen maar krijg het niet voor elkaar... het is 30 mb groot...


Groeten,
Hans
 
Bedankt voor onderstaande tip, ik zal er eens mee bezig gaan, lijkt me te makkelijk om te kunnen :cool:
Het is geweldig om vragen te kunnen stellen aan mensen met zoveel kennis, bedankt.


Jij maakt lange dagen, want er staat nog niks ;). Maar als ik je vraag zo lees, is er wel een simpele oplossing, waarvoor je niet eens hoeft te programmeren. In welk geval je natuurlijk in het verkeerde forum zit, maar dat staat hier los van.
Als je cijfers opslaat in je tabelveld, kun je met de SWITCH formule die cijfers vervangen door een zelf gekozen waarde. En dat is je oplossing, want in een query kun je de cijfers vervangen door een of meer tekens. Het cijfer 1 vervang je door *, 2 door ** en zo verder. In je formulier maak je het tekstveld op in het lettertype WingDings of WebDings. Het * moet dan het teken zijn dat in het gekozen font het juiste sterretje geeft.

Edit: Het is gelukt, hartstikke bedankt.
Kostte wel enige moeite om de expressie op de juiste manier ingevoerd te krijgen maar na enig zoeken en proberen toch gelukt.

Voor mensen die de Switch-functie in een query willen gebruiken, hier de goede syntax (Access 2013):
Rating: Switch([cRating]=1;"w";[cRating]=2;"ww";[cRating]=3;"www";[cRating]=4;"wwww";[cRating]=5;"wwwww")

"Rating" is de naam van het veld dat je opneemt in het formulier, hierna komt een dubbele punt ":"
"Switch" is het aanroepen van de functie, hierop volgt het openingshaakje "("
[cRating] is het veld uit de tabel waarop de query is gebaseerd waaruit je de waarde wilt lezen, dit is natuurlijk verschillend voor iedereen
=1 is de waarde van het veld, ook dat is variabel voor ieder afzonderlijk
dan de punt-komma, dat is het scheidingsteken ( in voorbeelden op het net kom je steeds een komma tegen en dat genereert fouten)
Dan tussen aanhalingstekens het teken waarmee je de waarde wilt vervangen
afsluitend kun je nu een sluitingshaakje ")" plaatsen of, als je meer wilt vervangen een punt-komma

Ik hoop dat het duidelijk is en dat iemand hier iets aan heeft.

Hans
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan