Avatar billede roose Nybegynder
11. oktober 2002 - 21:16 Der er 9 kommentarer og
3 løsninger

Ændre layout på baggrund af værdier i resultat af forespørgel

Først oplysningerne:
På baggrund af en tabel, kører jeg en ganske enkel forespørgsel.
Et af tabellens felter er et "ja/nej"-felt.

Nu ønskerne:
Jeg vil gerne have, at de "række" i mit resultat af forespørgelsen der har "ja" i ja/nej-feltet er markeret med fx fed skrift - kan det lade sig gøre ?

Skal det kodes i VB ? eller lægges i forespørgselsen ? eller måske i tabellen ?

På forhånd tak.
Avatar billede mugs Novice
11. oktober 2002 - 21:19 #1
Hvis Ja/Nej feltet er af denne type, kan det ikke lade sig gøre.

Hvis du med et Ja/Nej felt mener en tekstboks med ordene Ja eller Nej, kan det sagtens lade sig gøre.

Det kan kodes i VBA.
Avatar billede mugs Novice
11. oktober 2002 - 21:26 #2
Koden kan se som her indsat i formularens OnCurrent (VedAktuel) event:

If Me.felt1 = True Then
Me!felt2.FontBold = True
Else
Me!felt2.FontBold = False
End If

felt er et Ja/Nej felt, der afhængig af værdien giver tekstboksen felt2 fed skrift.
Avatar billede roose Nybegynder
11. oktober 2002 - 21:29 #3
Ja/Nej er - uheldigvis - feltet og ikke en tekstboks.

Med andre ord er det kun muligt at rette i al layout i en tabel/foresprøgsel, og ikke kun i en enkelt post ?

Kan der være en "høker" måde jeg kan få samme resultat på ??
Avatar billede mugs Novice
11. oktober 2002 - 21:29 #4
Hvis koden skal gennemløbes efet en genforespørgsel, kan du lægge koden i kommandoknappens Onclick Event, der samtidig vil køre den underliggende forespørgsel: 

Me.Requery
If Me.felt1 = True Then
Me!felt2.FontBold = True
Else
Me!felt2.FontBold = False
End If
Avatar billede hossein Nybegynder
11. oktober 2002 - 21:34 #5
det bliver noget i den retning:

If DCount("[CalDate]", "[tblSchedule]", "[CalDate]=#" & datDate & "#") > 0 Then
                          'Showme
                          .ForeColor = vbRed
                          .FontWeight = 800
                        Else
                          .FontWeight = 400
                          If WeekDay(datDate) = 1 Or WeekDay(datDate) = 7 Then
                              .ForeColor = vbBlue
                            Else
                              .ForeColor = vbBlack
                          End If
                      End If
Avatar billede roose Nybegynder
11. oktober 2002 - 21:35 #6
Men alt dette refererer til min Form og ikke til mit resultat af forespørgslen, ikk' ?
Avatar billede hossein Nybegynder
11. oktober 2002 - 21:39 #7
Du kan anvende funktionen i din forspørgsel (funktionen skal lægges i en module)

select changeColor(mintable.minfelt) as nyfelt from mintable

vh Hossein
Avatar billede mugs Novice
11. oktober 2002 - 21:46 #8
Hvis du lægger min kode i:

Formularens OnCurrent event
I Ja/Nej feltets OnClick  event

vil tekstboksens skrifttype altid være efhængig af Ja/Nej feltets værdi.

Jeg kan sende dig en testdb. Blot læg din e-mail.
Avatar billede terry Ekspert
12. oktober 2002 - 09:31 #9
If we are talking about a form in single form view then its is possible, but if it is in Continuous or datasheet then it isnt UNLESS we are using windows 2000 or XP.
Avatar billede terry Ekspert
16. oktober 2002 - 19:46 #10
roose>hows it going with this question, have you received an answer you can use or do you still need help?
Avatar billede terry Ekspert
25. oktober 2002 - 16:03 #11
Hello....
Avatar billede roose Nybegynder
25. oktober 2002 - 17:03 #12
Sorry - and thanx Terry for reminding me.

Afterall - It doesn't work - I don't think its possible at all to change the font for only one record in a query-result.

Thank you all for your fast responses - I'm sorry I wasn't as fast ;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester