29. september 2002 - 10:16Der er
13 kommentarer og 3 løsninger
Opdatere tabel i formular
Hej alle
Jeg har et lille problem, når jeg står i min formular og har indtastet tal i en post. Vil jeg gerne åbne en anden formular samtidig. Den anden formular benytter samme poster. Jeg får en fejl ved åbning af den anden formular.
Hvis jeg lukker den første formular, og derefter åbner den igen, og så åbner den anden formular, kan det godt lade sig gøre.
Det er lige som om at tabllen ikke bliver opdateret, så posterne er fri til brug.
I dette særtema ser vi på, hvordan cloud og AI bliver fundamentet for virksomhedernes digitale forretning, og hvordan de nye muligheder for automatisering og forretningsværdi kan udnyttes uden at miste overblik, sikkerhed og menneskelig kontrol.
Tabellen bliver først opdateret med den nye post når du forlader posten. Det lyder som om, at din update-sætning ligger efter åbning af den anden formular.
Først Update og derefter Docmd.Openform "formularnavn" og derefter kriterie.
Hvis du kun retter i en post kan du nøjes med Me.Refresh og Do.cmd.Openform
dm013 > Ved Requery køres forespørgslen igen, og formularen viser den føærste post i forespørgslen afhængig af sorteringen, derfor nytter kommandoen ikke, da taio ønsker at åbne den anden formular i den første formulars post (Så vidt jeg har forstået).
If KeyCode = vbKeyF10 Then If Kviksalg = 0 Then If Splitregning = -1 Then DoCmd.OpenQuery "q_sletsplitover" DoCmd.OpenQuery "q_sletsplitunder" SendKeys "{f9}", -1 DoCmd.OpenQuery "q_flytsplitover" DoCmd.OpenQuery "q_flytsplitunder" SendKeys "{f9}", -1 DoCmd.OpenForm "splitvaresalg", , , "id=" & Me![ID] KeyCode = 0 Else End If Else End If End If
Når jeg taster F10 skal den åbne den anden formular. Hvor fejlmeddelsen lyder: Kørselsfejl "3075" Hvad gør jeg forkert??
If KeyCode = vbKeyF10 Then DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70 If Kviksalg = 0 Then If Splitregning = -1 Then DoCmd.OpenQuery "q_sletsplitover" DoCmd.OpenQuery "q_sletsplitunder" SendKeys "{f9}", -1 DoCmd.OpenQuery "q_flytsplitover" DoCmd.OpenQuery "q_flytsplitunder" SendKeys "{f9}", -1 DoCmd.OpenForm "splitvaresalg", , , "id=" & Me![ID] KeyCode = 0 Else End If Else End If End If
Når der mangler en operator, har dette ikke noget med at tabellen ikke er opdateret. Det er 2 forskellige ting. Prøv evt. at tilføje en post, luk formularen og åbn den igen, prøv så om du kan åbne formular2 og finde posten. Hvis den stadig mangler en operator, skal du søge efter en fejl der. Når den er løst, kan vi gå videre og fin en løsning på opdateringsproblemet.
Jeg plejer at bruge nedenstående kode, til at åbne formular 2, hvor felt1 skal matche samme felt i formular1:
mugs=> når jeg tilføjer en post, lukker form1 og åbner den igen, åbner form2 virker det. MEN hvis ikke jeg lukker den og åbner den igen, virker det ikke. Jeg har prøvet at at kører sendkeys"{F9}" for update inden jeg åbner form2, uden held.
Har du prøvet en 'me.Requery' lige efter 'DoCmd.DoMenuItem acFormBar, acRecordsMenu, acSaveRecord, , acMenuVer70'. Problemmet er at formen ikke kender værdien af dit ID felt endnu.
Det var bare det der skulle til, kun me.requery, ikke andet. Jeg giver dig 20 point, hvor de andre deler resten. Håber at det er ok, men de har været på sagen længe. Tak til i andre...!
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.