Avatar billede jasman Nybegynder
03. juni 2004 - 23:08 Der er 13 kommentarer og
2 løsninger

Manipulere et felt som ikke er findes på en formular

Hejsa,

hvis jeg har en formular som anvender en tabel, og jeg programmatisk vil manipulere et felt på tabellen som IKKE vises på formularen, kan jeg ikke anvende notationen:

Me.<felt>

Hvorledes kan man få fat i og manipulere den record, man er ved at oprette eller den record som markøren står på (altså felter i recorden som ikke vises på formularen) ?

Det skal bruges til autoinitialisering af et skjult felt.

MVH

Jacob
03. juni 2004 - 23:14 #1
Enten skal du lægge feltet på formularen alligevel (og bare skjule det med Synlig=falsk) eller du kan ofte referere til det uden Me. - altså blot
msgbox [Felt]

Dette går dog af og til galt (har aldrig helt gennemskuet hvorfor)

Mit sidste bud er lidt mere omstændigt, da det kræver et par liner kode mere:

Dim rs
Set rs = me.Recordsetclone
rs.bookmark = me.Bookmark
Msgbox rs![Felt]
Avatar billede nih Novice
04. juni 2004 - 07:57 #2
Man plejer at kunne bruge me![feltNavn] for de felter der ikke er med på formen, men med i forespørgslen bag formen.

Niels
Avatar billede nih Novice
04. juni 2004 - 07:58 #3
'!' istedet for '.'
04. juni 2004 - 08:46 #4
Niels, du kan da ikke referere til Me!Feltnavn (i VBA), hvis feltet ikke er på formularen!
Avatar billede nih Novice
04. juni 2004 - 09:06 #5
JO du kan :)

Niels
Avatar billede nih Novice
04. juni 2004 - 09:07 #6
når du bruger ! referere du direkte til den underliggende forespørgsel
04. juni 2004 - 09:12 #7
Jamen, du har jo ret!!???? Hvorfor får jeg så nogle gange fejl, så jeg har været nødt til at lægge et skjult felt på???

Og det er ikke fordi jeg bruger punktum som. Jeg bruger altid udråbstegn....mystisk...det vil jeg lige holde øje med!
Avatar billede nih Novice
04. juni 2004 - 09:29 #8
me.feltnavn virker kun hvis din tekstbox har SAMME navn som feltet, hvilket er Access default

hvis du kalder din tekstbox noget andet kan du tilgå feltet via tekstboxen med me.textboxnavn eller me!feltnavn

Jeg plejer ikke at få fejl, når jeg bruger ovenstående

Niels
Avatar billede nih Novice
04. juni 2004 - 09:32 #9
Du kan også gøre således:

Me.Recordset.Fields("[feltnavn]")

hvis du bruger rs.clone kan du IKKE ændre feltværdien.
04. juni 2004 - 09:35 #10
Nej, det er klart (recordsetclone er ofte bare hurtigere, hvis du kun skal lave opslag - og Me.reordset!feltnavn blev først indført i Access 2000, så vidt jeg husker)

(hvorfor bruger du Fields i din reference?)
Avatar billede nih Novice
04. juni 2004 - 09:52 #11
For at vise det med '.'  :o)
Avatar billede jasman Nybegynder
09. juni 2004 - 20:22 #12
Undskyld at jeg først acceptterer nu.

Tak for hjælpen.

:)
09. juni 2004 - 20:23 #13
np :o)

og tak :o)
Avatar billede nih Novice
09. juni 2004 - 20:52 #14
Fik du det til at virke med '!' ???

-og tak for pts :)
Avatar billede jasman Nybegynder
09. juni 2004 - 23:10 #15
Ja
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