Avatar billede Friis77 Praktikant
09. november 2002 - 13:01 Der er 32 kommentarer og
1 løsning

Lægge sammen i andet felt???

Jeg er ved at lave database, men er løbet ind i et problem.
jeg vil bruge data fra et felt og gange det med et tal, så resultatet bliver vist i et andet felt.

FELT 1  :  FELT 2
700        1050

FELT 1 * 1,5 = FELT 2

hjælp????????????
Avatar billede mugs Novice
09. november 2002 - 13:27 #1
Me.felt2 = Me.felt1 * 1,50
Avatar billede mugs Novice
09. november 2002 - 13:34 #2
Læg koden i felt1 Før opdatering (BeforeUpdate). Derefter kan du sætte egenskaberne Aktiveret til Nej og Låst til Ja for felt2. Så kan markøren ikke placeres i feltet.

Desuden skal du bruge punktum og ike komma som jeg skrev.

Me.felt2 = Me.felt1 * 1.50
Avatar billede sjap Praktikant
09. november 2002 - 13:41 #3
Badboy24

Hvis du gør det på en formular, kan du nøjes med at skrive

=Felt1*1,5

I Felt2's kontrolelementkilde.
Avatar billede mugs Novice
09. november 2002 - 13:45 #4
superjab har delvis ret. Som kontrolelementkilde skal det skrives som I Access97:

=[felt1]*1,5
Avatar billede sjap Praktikant
09. november 2002 - 13:48 #5
Hej Mugs

Som den dovne slyngel jeg nu engang er, så har du (ligesom jeg) delvis ret: Hvis man skriver det som jeg foreslår, så retter programmet det automatisk til det som du skriver. :-)  (dovenskaben længe leve)
Avatar billede mugs Novice
09. november 2002 - 13:52 #6
Hej superjab > Ja, det er rigtig at Access selv retter fejlen. Men jeg var så doven, at jeg ikke gad prøve det før, men blot skrev den rigtige syntaks :o)
Avatar billede Friis77 Praktikant
09. november 2002 - 13:56 #7
hvor finder jeg felt2's kontrolelementkilde, jeg bruger office XP
Avatar billede sjap Praktikant
09. november 2002 - 14:01 #8
Når du designer formularen dobbeltklik på Felt2. Så dukker Felt2's egenskaber op. På fanebladet "Data" står kontrolelementkilde øverst.
Avatar billede Friis77 Praktikant
09. november 2002 - 14:15 #9
ok det virker fint i formularen, men i tabeller retter den ikke felt2???????
Avatar billede sjap Praktikant
09. november 2002 - 14:16 #10
Er der nogen speciel grund til at gemme Felt2 i tabellen, når det bare er Felt 1 gange 1,5?
Avatar billede mugs Novice
09. november 2002 - 14:18 #11
Hvis du bruger min kode gemmes værdien i tabellen, så du kan regne videre på det i f.eks andre poster.
Avatar billede mugs Novice
09. november 2002 - 14:31 #12
Nu ved jeg jo ikke i hvilkenforbindelse du skal bruge udregningen, men tilsyneladende skal du gemme værdien til senere brug.

Hvis dette "senere brug" drejer sig om en rapport, kan du placere udregningen i den forespørgsel, der ligger til grund for rapporten. Du trækker felt1 ned i forespørgslen og sætter markøren i et tomt felt. Derefter trykker du på tryllestaven, og i udtryksgeneratoren skriver du:

[felt1]*1,5

Access vil så rette det til:

Udtryk1: [felt1]*1,5

På den måde bruger du ikke plads i hverken din formulare eller tabel, men placerer udregningen hvor den skal bruges, og ikke andre steder.
Avatar billede Friis77 Praktikant
09. november 2002 - 16:56 #13
jeg er godt dum til dette :) jeg kan ikke få det til at virke....
Avatar billede mugs Novice
09. november 2002 - 16:58 #14
Hvilken fejl får du?
Du kan lægge din e-mail, så sender jeg en testdb i Access97. Den skal så blot konverteres til din version.
Avatar billede Friis77 Praktikant
09. november 2002 - 17:01 #15
min e-mail er : krfriis@post9.tele.dk

felt1 = pris ex moms
felt2 = pris
Dvs. felt1*1,5 = felt2(pris)
Avatar billede mugs Novice
09. november 2002 - 17:08 #16
Testdb sendt.
Avatar billede Friis77 Praktikant
09. november 2002 - 17:19 #17
jeg opgiver, jeg kan ikke finde ud af det, medmindre jeg kunne sende databasen til dig og så kan du kikke på den
Avatar billede mugs Novice
09. november 2002 - 17:23 #18
Jeg kan ikke llæse din db, da jeg bruger Access97, og xp kan ikke konverteres til dette format.
Men lad være med at opgive - Så kommer vi jo aldrig videre :o)

Din kode skal se sådan ud.
Me.felt2 = Me.felt1 * 1,50

Har du været inde i min db, og set hvordan jeg har lagt beregningen?
Hvad er det du ikke kan få til at fungere?
Får du en fejl, i givet fald hvilken?
Beregner db, men med et forkert resultat?
Sker der overhovedet ikke noget?
Avatar billede Friis77 Praktikant
09. november 2002 - 17:33 #19
ok forfra....

Jeg har 2 felter hvor jeg i det ene (pris ex moms) skriver en pris uden moms, som så skal gangs med 1,5 og visen i feltet (pris)...

jeg har kun oprettet tabeller i min database og ikke nogle formulare eller noget andet......
Avatar billede mugs Novice
09. november 2002 - 17:35 #20
Der forklarer en hel del. Denne beregning kan du ikke udføre på tabelniveau!!
Avatar billede mugs Novice
09. november 2002 - 17:39 #21
Åbn din db i databasevinduet (Det vindue der i venstre side har oppefra : Tabeller, Forespørgsler o.s.v.

Marker din tabel uden at åbne den. på menulinien starter du gra højre og finder ikonet for autoformular, og laver en sådan. Luk den og lagre. Åbn igen formularen og gå i Designvisning < højreklik på felt1 > egenskaber > fanen hændelser og klik på de 3 små ... i højre side.

Du er nu inde i VBA-editoren og skal sikre dig at du i højre dropdown står i BeforeUpdate. Her indsætter du koden. Pg så SKAL det køre.
Avatar billede Friis77 Praktikant
09. november 2002 - 17:50 #22
jeg skriver : =[pris ex moms)*1,5 men den regner det ikke ud??????
Avatar billede mugs Novice
09. november 2002 - 17:55 #23
I din kommentar angiver du felterne således:

felt1 = pris ex moms
felt2 = pris
Dvs. felt1*1,5 = felt2(pris)

Jeg antager at felt1 og felt2 er feltnavnene. Derfor kan du ikke skrive "pris ex moms". Det er feltnavnet * 1,50. Desuden har du både [ og ) i udtrykket. Prøv at se i min db og kopier, det er nøjagtig det samme, hvis feltnavnene er ens.
Avatar billede Friis77 Praktikant
09. november 2002 - 17:55 #24
jeg kan godt få den til at regne det ud i formulargen hvis jeg skriver koden i "kontrolelementkilde" men den retter ikke talet i tabellen??????????
Avatar billede mugs Novice
09. november 2002 - 17:57 #25
Nej o og det er fordi du bruger superjabs forslag. Brug mit så kører det.
Avatar billede Friis77 Praktikant
09. november 2002 - 18:04 #26
nej feltnavne er 1"pris" 2"Pris ex moms"

og det virker stadig ikke jeg får ikke en fejl men den regner det bare ikke ud
Avatar billede mugs Novice
09. november 2002 - 18:11 #27
Denne er afprøvet og fungerer i access97. Den skal også virke i xp:

Private Sub Pris_ex_moms_BeforeUpdate(Cancel As Integer)
pris = Pris_ex_moms * 1.5
End Sub
Avatar billede Friis77 Praktikant
09. november 2002 - 18:24 #28
tak for alt jeres hjælp
Avatar billede mugs Novice
09. november 2002 - 18:24 #29
Velbekomme > Fungerer det så?
Avatar billede Friis77 Praktikant
09. november 2002 - 18:30 #30
Nej jeg er sgu for dum når det kommer til databaser, jeg kan kun det grundlæggende..........
Avatar billede mugs Novice
09. november 2002 - 18:33 #31
Hvis du sender mig db, kan jeg se på den på Mandag, hvor jeg har XP på arbejdet.

mugs@mail.dk
Avatar billede Friis77 Praktikant
09. november 2002 - 18:38 #32
tak jeg har sendt den til dig
Avatar billede mugs Novice
11. november 2002 - 07:50 #33
Database er rettet. Sendes til brugeren i eftermiddag.
Der var tale om at indsætte en beregning:

pris = pris_ex_moms_ * 1.5

beregningen er indsat i feltet pris i FørOpdatering.
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