Avatar billede mrosing Novice
12. oktober 2006 - 16:55 Der er 11 kommentarer og
1 løsning

standardværdi i listbox, sidst brugte værdi

Jeg har en listbox med 3 mulige værdier. Når man taster en værdi ind skal den blive som standardværdi. Det gør jeg ved at have en variabel som indeholder den pågældende værdi og så en funktion der kalder den variabel. Standardværdien er så sat til den funktion.

Public DefaultSex As String

Public Function DefSex()
DefSex = DefaultSex
End Function

Sex.defaultvalue=DefSex() (sat i properties vinduet)

Private Sub Sex_AfterUpdate()
DefaultSex = Me!Sex
End Sub


Se

Men, fordi Sex er sidst i tabulatorrækkefølgen så sker der det at når man kommer ned i næste record så er standardværdien ikke lavet om, det bliver den først en record (linie) senere. Hvis jeg i stedet bruger Sex_BeforeUpdate så virker det heller ikke fordi der ikke er nogen værdi i endnu og derfor kan den ikke være standardværdi.
Avatar billede jesperfjoelner Nybegynder
12. oktober 2006 - 17:12 #1
Kan du i properties vinduet slå det fra så der kun cycles i felter i samme post og at tab ikke går videre til næste post?
Avatar billede mrosing Novice
12. oktober 2006 - 18:07 #2
Nej det duer ikke. Det er en formular der bruges til at indtaste fiskelængder med. Den der måler kommer med længder efterfulgt af køn, men hvis kønnet ofte er det samme så er et nemmere at have en standardværdi der opdateres hver gang.
Avatar billede fdata Forsker
12. oktober 2006 - 18:32 #3
Jeg går ud fra at Sex er en String. Prøv:

Private Sub Sex_AfterUpdate()
  Me.Sex.DefaultValue = """" & Me.Sex & """"
End Sub
Avatar billede mrosing Novice
12. oktober 2006 - 19:15 #4
Nej det er det iriterende ved listboxe. Man kan ikke bare sætte defaultvalue på den måde.
Avatar billede terry Ekspert
12. oktober 2006 - 19:20 #5
and what is the default value next time you start the application?
Variables are reset when you restart the application!
Why not save the value in a table?
Avatar billede fdata Forsker
12. oktober 2006 - 20:18 #6
Jo! Det fungerer da fint med ovenstående kode. Man kan endda se default'en flytte med i den nye post.
Avatar billede mrosing Novice
12. oktober 2006 - 20:28 #7
I think it resets to Null but I am not sure. In this particular case it is of little consequence unless it produces an error
Avatar billede fdata Forsker
12. oktober 2006 - 20:37 #8
mrosing >>> Har du testet min kode? Hvad sker der?
Avatar billede mrosing Novice
13. oktober 2006 - 14:21 #9
Hey Cool, it worked.

The reason why I thought that it didn't is that I once tried doin this:
me!Sex.DefaultValue=Me!Sex

And that one just won't work when we are dealing with a ListBox which is why I usually make a parameter that will hold the value (I was told so by another Experten user). Is there a short explanation for the """ & Me.Sex part ? I don't recall seing that one before.
Avatar billede fdata Forsker
15. oktober 2006 - 16:58 #10
Ok. We switch to english  ;o)

Me!Sex.DefaultValue=Me!Sex
only works if Me.Sex is a numeric value

Me.Sex.DefaultValue = """" & Me.Sex & """"
works with strings. The result being: "M" or "F"

(Don't forget to close the question)
Avatar billede mrosing Novice
16. oktober 2006 - 13:01 #11
Great, thanks!
Avatar billede mrosing Novice
16. oktober 2006 - 13:02 #12
Thought I did that, but I didn't realize that I had to highlight the username
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