Avatar billede fiffi Novice
07. juni 2004 - 15:51 Der er 7 kommentarer og
1 løsning

Gennemløb af tabeller/forespørgsler

Jeg har en tabel/forespørgsel som jeg gerne vil gennemløbe for at opdatere et felt på baggrund af oplysninger indtastet i et andet. Hvordan kan jeg "strikke" dette sammen ved brug af makroer/vba, således at jeg starter ved post 1 og slutter ved den sidste post.
Avatar billede jensen363 Forsker
07. juni 2004 - 15:59 #1
Du kan lave en UPDATE forespørgsel som gennemløber alle poster
Avatar billede jensen363 Forsker
07. juni 2004 - 16:02 #2
Eksempelvis beregn Moms :

UPDATE tblData SET tblData.Beløb = [Beløb]*1.25;
Avatar billede mugs Novice
07. juni 2004 - 16:28 #3
Eller denne kørt fra en formular:

DoCmd.SetWarnings False
DoCmd.RunSQL "UPDATE Tabel1 SET Tabel1.felt1 = Tekst2"
DoCmd.SetWarnings True

Tabel1.felt1 er det felt i Tabel1 der skal opdateres. Tekst2 er det felt i formularen der indeholder de data der skal overføres til felt1.

Set warnings kobler Access systemadvarsler til og fra, så du ikke behøver at se på advarslen "Du er ved at opdatere X antal poster".
Avatar billede jensen363 Forsker
07. juni 2004 - 16:32 #4
Mugs > Benyt DAO / strSQL / dd.Execute ... så undgår du DoCmd.SetWarnings
Avatar billede fiffi Novice
07. juni 2004 - 16:43 #5
Den lyder tiltalende den der med RunSQL, hvor jeg kan definere hvad der skal i teksten, det det faktisk er meget "kryptiske" beregninger der skal laves. Men hvordan får jeg den til at løbe igennem hele tabellen. Jeg vil fx. lave en do Until/Loop hvis det var i excel.
Avatar billede mugs Novice
07. juni 2004 - 16:47 #6
fiffi > den gennemløber alle poster i din tabel, så du behøver ingen løkke.Det er faktisk det samme som jensen363 har lavet, blot har jeg flyttet SQL-sætningen ind i en formular.

Du kan definere opdateringsværdien i et felt i din formular, se min forklaring:

"Tekst2 er det felt i formularen der indeholder de data"

Mit forslag er afprøvet i en lille testdb, som jeg kan sende hvis du lægger din e-mail.
Avatar billede fiffi Novice
07. juni 2004 - 16:49 #7
Det vil jeg gerne. For jeg er lidt forvirret omkring gennemløbet, idet jeg har haft fornemmelsen af, at det kun var i forespørgsler man principielt kunne lave alle gennemløb.
Min mailadresse er mfj@lfi.dk
Avatar billede mugs Novice
07. juni 2004 - 16:54 #8
Testdb er sendt. Tak for point.
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