Check alle échte Black Friday-deals Ook zo moe van nepaanbiedingen? Wij laten alleen échte deals zien

[Acces] Waarde tekstvak afhankelijk van waarde keuzelijst

Pagina: 1
Acties:

Vraag


  • JoeCool
  • Registratie: Oktober 2000
  • Laatst online: 16:30

JoeCool

ToTaL CooLNeSS

Topicstarter
Ik ben bezig met een database waarbij ik in een formulier een tekstveld automatisch wil laten invullen afhankelijk van de keuze uit een keuzelijst.

De database bestaat uit 1 tabel met 5 kolommen.

Naam Stars Type Kleur Evolved


Kies ik bijvoorbeeld uit de keuzelijst (Type) "Blunt", dan moet de waarde "Blauw" automatisch in het
tekstvak (Kleur) worden ingevuld.

Dit zijn vaste waardes die bij elkaar horen

Bij (Type) Blunt hoort de (Kleur) Blauw
Bij (Type) Magic hoort de (Kleur) Paars
Bij (Type) Pierce hoort de (Kleur) Geel
Bij (Type) Slash hoort de (Kleur) Rood

Fashionably sensitive, but too COOL to care

Alle reacties


  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Van iemand met met 2245 forumposts verwacht ik toch meer qua topicstart. Hoever kom je zelf?

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • The_Vice
  • Registratie: Augustus 2002
  • Laatst online: 21:04
Met een hulp tabel (of Groupby Query) "TabelTypeKleur", met velden [Type],[Kleur]

In default value van Me.kleur iets met
DLookup (Kleur, TabelTypeKleur, Type = Me.Type)
als je het bij aanmaken in wilt vullen, anders in een Update Event van Me.type hiermee laten bijwerken in Me.kleur

Zie support.office.com...Dlookup.

Let wel op gebruik van single quotes als je op basis van string zoekt.

  • JoeCool
  • Registratie: Oktober 2000
  • Laatst online: 16:30

JoeCool

ToTaL CooLNeSS

Topicstarter
Bedankt voor alle input.
Ik denk dat het met behulp van een hulp tabel zou moeten werken.

Ik wil graag dat het tekstveld direct wordt ingevuld en direct zichtbaar is op het formulier.


Afbeeldingslocatie: http://i63.tinypic.com/5eh4cn.jpg

[ Voor 44% gewijzigd door JoeCool op 24-07-2016 17:17 ]

Fashionably sensitive, but too COOL to care


  • The_Vice
  • Registratie: Augustus 2002
  • Laatst online: 21:04
Zoiets doelde ik op.

Als je dan op het form alleen de kleur wilt laten "zien" (wat ook de netste manier is, anders sla je data twee keer op.) dan een textbox toevoegen met een control source a la hierboven reeds genoemd:
code:
1
=DLookUp("[kleur]";"Hulp Tabel";"type = '" & [Type] & "'")


ongeveer gelijk voorbeeld: MS Access .....Values Using DLookup, wel via wat VBA

[ Voor 85% gewijzigd door The_Vice op 24-07-2016 21:37 ]


  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

Dlookup is verschrikkelijk traag en in dit geval overbodig.

Omdat in deze opzet kleur en type een 1:1 relatie hebben is het al genoeg om beide tekstvakken als keuzelijst uit te voeren en naar hetzelfde veld te laten verwijzen.

Als je meer eigenschappen wilt tonen maak je -zoals genoemd- een hulptabel met 'type' als PK en baseer je je formulier op een query. Zodra je het type kiest zul je zien dat alle eigenschappen keurig worden getoond.

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • Wim-Bart
  • Registratie: Mei 2004
  • Laatst online: 10-01-2021

Wim-Bart

Zie signature voor een baan.

Vroeger deed ik dat met een onchange event van een input veld, bijvoorbeeld van het type veld. In deze onchange werd dan het itemlist veld kleur in jouw geval opnieuw opgebouwd aan de hand van een query op een tabel of handmatig.

Beheerders, Consultants, Servicedesk medewerkers. We zoeken het allemaal. Stuur mij een PM voor meer info of kijk hier De mooiste ICT'er van Nederland.


  • JoeCool
  • Registratie: Oktober 2000
  • Laatst online: 16:30

JoeCool

ToTaL CooLNeSS

Topicstarter
Nogmaals bedankt voor alle input, ik stel dirt zeer op prijs.
Lustucru schreef op zondag 24 juli 2016 @ 23:00:

Omdat in deze opzet kleur en type een 1:1 relatie hebben is het al genoeg om beide tekstvakken als keuzelijst uit te voeren en naar hetzelfde veld te laten verwijzen.
Ik will juist maar 1 keuzelijst, namelijk (Type), afhankelijk van de gekozen waarde (Type) moet automatisch de bijbehorende (Kleur) in een tekstvak worden weer gegeven.

Ik denk dat dit precies het "probleem is,
(Type) is een variabele waarde die gekozen moet worden uit de keuzelijst, terwijl (Kleur) een vaste waarde is die al is "vast gelegd" in de hulptabel.

Verder kan het veld (Type) nooit de Primairy Key zijn omdat meerdere entries van het zelfde type kunnen zijn.

[ Voor 12% gewijzigd door JoeCool op 24-07-2016 23:50 . Reden: Typo ]

Fashionably sensitive, but too COOL to care


  • Lustucru
  • Registratie: Januari 2004
  • Niet online

Lustucru

26 03 2016

In jouw voorbeeld zijn kleur en type twee weergaven van dezelfde eigenschap. Als je perse niet wilt dat mensen een kleur kiezen (waaruit automatisch een type volgt) disable je die keuzelijst en toon je het valpijltje niet.

PK uiteraard van de hulptabel. Als daar meerdere records van één type voorkomen klopt je datamodel niet.

De oever waar we niet zijn noemen wij de overkant / Die wordt dan deze kant zodra we daar zijn aangeland


  • JoeCool
  • Registratie: Oktober 2000
  • Laatst online: 16:30

JoeCool

ToTaL CooLNeSS

Topicstarter
Lustucru schreef op maandag 25 juli 2016 @ 00:13: Als daar meerdere records van één type voorkomen klopt je datamodel niet.
In de hulptabel komt elk (Type) maar één keer voor.
In de "hoofdtabel" kan een bepaalt (Type) vaker voorkomen.

[ Voor 25% gewijzigd door JoeCool op 25-07-2016 01:53 ]

Fashionably sensitive, but too COOL to care


  • The_Vice
  • Registratie: Augustus 2002
  • Laatst online: 21:04
Lustucru schreef op zondag 24 juli 2016 @ 23:00:
Dlookup is verschrikkelijk traag en in dit geval overbodig.
Vindt ik meestal wel meevallen, 0.1 sec kan ik wel op wachten tijdens het invullen van een form, zo snel ben ik zelf niet.
Omdat in deze opzet kleur en type een 1:1 relatie hebben is het al genoeg om beide tekstvakken als keuzelijst uit te voeren en naar hetzelfde veld te laten verwijzen.
Maar dan wel zorgen dat het type veld in de hulp-tabel uniek geindexeerd (PK) is. Anders is je query niet updatebaar. (Daar was ik met testen van voorbeeld weer eens even ingetrapt in de gauwigheid)

[ Voor 7% gewijzigd door The_Vice op 25-07-2016 12:08 ]

Pagina: 1