Avatar billede jobless Nybegynder
04. juni 2002 - 15:14 Der er 4 kommentarer og
2 løsninger

Gemme form via VBA

Hej.

Når jeg har ændret et felts standardværdi via VBA vil jeg gerne have gemt min formular fra VBA, sådan at feltets standardværdi er den nye værdi næste gang jeg åbner formen.
Jeg har forsøgt med:
docmd.save acform .......
men dette gemmer ikke formens standardværdi m.m.

Any solution??

MVH

JoBless
Avatar billede mugs Novice
04. juni 2002 - 16:32 #1
Flg er taget fra Access97 hjælpefil:

Forms!frmFaktura!Betalingsmetode.DefaultValue = """Kontant"""

Prøv selv at søge med søreordet "Standardværdi", idet der er en række begrænsninger.
04. juni 2002 - 19:16 #2
For at gemme en post, skal man bruge denne kommando:

Docmd.RunCommand accmdsaverecord
Avatar billede terry Ekspert
04. juni 2002 - 19:30 #3
I havent tried this but I would imagine that you need to open it in design mode, make the changes and then save!
05. juni 2002 - 09:53 #4
Sorry, jeg havde vist ikke fået læst spørgsmålet rigtigt! :o(

Terry har ret - hvis du ønsker at gemme standardværdien, er du nødt til at have formularen åben i designvisning!

Der er dog andre muligheder. Du kan f.eks. gemme standardværdien i en tabel eller i registreringsdatabasen.

Hver gang du så åbner formularen, så indlæser du standardværdien fra tabellen eller fra registreringsdatabasen eller hvor du nu har gemt den.

Standardværdien sættes bare med denne linie:
  Me![DitFelt].DefaultValue = GetStandardværdi

hvor GetStandardværdi er en funktion, som henter værdien.
Hvis du gemmer det i en tabel, så kan din GetStandardværdi-funktion se således ud:

Public Function GetStandardværdi
  GetStandardværdi = DFirst("Standardværdi","Standardværditabel")
End function

Hvis du vælger Registreringsdatabase-løsningen, ser den således ud:

Public Function GetStandardværdi
  GetStandardværdi = GetSetting("DitApplikationsnavn","DinFormular","Standardværdi")
End function

Du gemmer værdien med sætningen:
Savesettings "DitApplikationsnavn","DinFormular",Me![DitFelt].DefaultValue

NB: Vær dog opmærksom på at den sidste løsning betyder at hver bruger kan have hver deres standardværdi!

/Thomas
Avatar billede jobless Nybegynder
05. juni 2002 - 21:26 #5
Hej.

Jeg prøver lige om det lykkes for mig ved at åbne i design, og derefter gemme (altsammen i VBA).

Løsningsforslaget med reg. DB tiltaler mig faktisk meget, jeg var ikke klar over at det lod sig gøre så let.

MVH

JoBless
Avatar billede terry Ekspert
05. juni 2002 - 21:50 #6
thanks jobless :o)
As Thomas mentiones using the registry allows each user to have their own settings, but actually so does the first!
If you have a front-end back-end application then you have user tables in the front-end and each user has their own copy of the program on their PC.
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