22. februar 2016 - 08:07Der er
8 kommentarer og 1 løsning
Afterupdate vba
Jeg har følgende kode som ved afkrydsning af fluebensfelt i en formular, skal sætte en dato i tabellen tabel1 i felt1:
Private Sub Til_Danmarks_lærerforening_AfterUpdate() If Me.Til_Danmarks_lærerforening = yes Then Else DoCmd.SetWarnings False DoCmd.RunSQL "UPDATE tabel1 SET [felt1] = date() WHERE [CPR nummer] = '" & Me![Cpr nummer] & "'" DoCmd.SetWarnings True End sub
Men dags dato bliver ikke sat i feltet felt1 og jeg ved ikke hvorfor. Samme kode virker andre steder i databasen hvor dags dato sættes ud for cpr-nummeret når f.eks. en rapport åbnes.
I stedet får jeg en meddelelse om, om at en anden bruger har ændret i posten siden jeg åbnede den (passer ikke) og at jeg kan kopiere ændringerne til udklipsholder. Hvis jeg prøver det, er det hele posten der kopieres over.
Is the table you are trying to update and also the record the one you have just changed in form? If so then I would suggest just updating the field [felt1] in the form in the BEFORE update event not after update event.
dane022: du ignorer hvad Terry skriver i #2 - med andre ord: 'Du' er selv den anden bruger, der genem direkte sql operation på den tabel der er formularen datakilde, afvises i at kaste grus i synkroniteten mellem dette tabelindhold og formularen kopi (=recordset) af tabellen.
Det er et dogme at man skal undgå at 'gå bagom' i hvertfald med formularers datakilde.
Så vidt jeg har forstået: Hvis felt1 ikke er bundet til et tekst kontrolelement på formularen så træk et ned fra vis felter boksen og tildel det værdien date() i eventen - kontrolelementet behøver ikke være synlig.
Removed code shown above and instead use following code in before update event of field.
If Me.Til_Danmarks_lærerforening = True Then Me.Danmarks_Lærerforening = Date
And thanks for the points
Synes godt om
Ny brugerNybegynder
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.