Avatar billede lakse Nybegynder
11. september 2003 - 21:22 Der er 38 kommentarer og
1 løsning

Access DB...mangler 2 funktioner

Jeg har et lille program lavet i access, men der mangler 2 funktioner før det er fuldt brugbart. Kan en af jer hurtigt lige lave de 2 funktioner?
Jeg kan sende en kopi af programmet og så kan i evt. tilrette de 2 funktioner?
Det drejer sig om et lagerstyringsværktøj hvor jeg kan oprette vare, priser, varenumre. lagerbeholdning, osv. Men jeg mangler 2 knapper til at springe frem til næste post i databasen samt en omregningsfunktion i prisen. Når jeg taster prisen ind, skal der være et felt mere under der hvor jeg taster prisen ind. I dette felt skal prisen så konverteres fra Euro til DKr.
Håber en af jer gider hjælpe..
Avatar billede mugs Novice
11. september 2003 - 21:25 #1
Denne går til den næste post i formular1:

DoCmd.GoToRecord acForm, "formular", acNext, 1
Avatar billede mugs Novice
11. september 2003 - 21:28 #2
Og denne til en ny post.

DoCmd.GoToRecord acForm, "Tabel1", acNewRec
Avatar billede mugs Novice
11. september 2003 - 21:29 #3
retelse, du skal have formularnavnet:

DoCmd.GoToRecord acForm, "formular", acNewRec
Avatar billede lakse Nybegynder
11. september 2003 - 21:31 #4
øhh...Jeg glemte vist at fortælle jeg er lidt af en klovn til access...så desværre ved jeg ikke helt hvordan jeg indsætter den kode og til hvilke knapper osv.
Avatar billede mugs Novice
11. september 2003 - 21:32 #5
M.h.t prisen i Euro, kan du i feltet hvori du indtaster prisen i kr, indsætte koden i Beforeupdate:

Me.Euro = Me.Kr * Me.kurs

Hvor Me.kurs er kursen. Du SKAL bruge et punktum, da komma er et reserveret tegn i Access. Men du skal dog passe på med kursen, idet en ændret kursværdi vil påvirke alle poster såfremt disse ligger i samme tabel. Du skla derfor stærkt overveje, om ikke allerede efekturerede ordrer skal placeres i en særskilt tabel.
Avatar billede mugs Novice
11. september 2003 - 21:34 #6
Tag en kommandoknap fra din værktøjskasse og placer den på din formular. Indsæt denne kode i knappens Vedklik hændelse:

DoCmd.GoToRecord acForm, "Formularrens navn", acNewRec

Hvis du vil gå til en ny post. Ellser denne, hvis du bare vil gå til næste post:


DoCmd.GoToRecord acForm, "formularens navn", acNext, 1
Avatar billede mugs Novice
11. september 2003 - 21:40 #7
Når du skal indsætte en kode i en kommandoknap eller i hvilken som helst anden hændelse, skal du åbne formularen i designvisning. Højreklik på det felt / kommandoknap hvori du vil indsætte koden.

I vinduet der nu kommer op vælger du egenskaber > Fanen Hændelser og i listen finder du den event hvori du vil indsætte koden. sæt markøren på denne linie og tryk på de 3 smp... i højre side. Du kommer nu ind i VBA-editoren, og markøren stilller sig mellem 2 linier:

Private Sub og noget mere

End Sub

disse 2 linier er Procedürekroppen, og AL kode skal ligge imellem disse 2 linier, så det f.eks ser således ud:

Private Sub og noget mere
DoCmd.GoToRecord acForm, "formularens navn", acNext, 1
End Sub
Avatar billede lakse Nybegynder
11. september 2003 - 21:40 #8
jeg prøver jeg prøver
Avatar billede mugs Novice
11. september 2003 - 21:41 #9
Kan sende dig et eksempel hvis du lægger din e-mail.
Avatar billede lakse Nybegynder
11. september 2003 - 21:43 #10
Når jeg trykker på den nye knap jeg netop har oprettet med din kode, så sprænger den over til en blank visning i mit program...altså som om der ikke er noget på den post...kan vi lave en knap der springer tilbage i tabellen?
Avatar billede lakse Nybegynder
11. september 2003 - 21:44 #11
jatak ...jeg tror det ville være nemmere hvis jeg sendte dig programmet så du kunne se det..hvis du altså vil?
Avatar billede mugs Novice
11. september 2003 - 21:45 #12
Den "blanke visning er en ny post lkar til indtastning. Men viol du gå til en ny post eller til den næste i tabellen?

Mugs@mail.dk
Avatar billede lakse Nybegynder
11. september 2003 - 21:46 #13
Den næste i tabellen
Avatar billede mugs Novice
11. september 2003 - 21:49 #14
Så skal den se sådan ud:

DoCmd.GoToRecord acForm, "formularens navn", acNext, 1
Avatar billede lakse Nybegynder
11. september 2003 - 21:52 #15
ok..nu virker den...men jeg skal have en der går den anden vej også
Avatar billede mugs Novice
11. september 2003 - 21:55 #16
Når du ikke er så meget hjemme i VBA, er det måske det nemmeste at lave en makro:

Åbn db i databasevinduet > Fanen Makro > Ny > Du kommer nu ind i makroens "programmeringsvindue" > Øverst vælger du den handling du vil udføre > Vælg GåTilPost > Derefter nederst til venstre ser du en ny dialogboks beregnet til handlingsargumenter > Øverste linie vælger du formular > 2. linie er formularens navn > 3. linie om du vil gå til en ny post eller næste > Hvis du vælger næste så skriv 1 i 4. linie. luk og lagre makroen. Husk navnet

I kommandoknappen's vedklik hændelse åbner du boksen ved at sætte markøren på linien VedKlik og trykke på de 3 små ... i højre side og vælg din makro.
Avatar billede mugs Novice
11. september 2003 - 21:56 #17
Tilbage løb:

DoCmd.GoToRecord acForm, "Tabel1", acPrevious, 1
Avatar billede lakse Nybegynder
11. september 2003 - 21:56 #18
knappen virker ok nu...men jeg skal bare lige have en den anden vej også
Avatar billede lakse Nybegynder
11. september 2003 - 22:02 #19
Sådan..så virker begge knapper:=) så mangler vi bare den Euro konvertion...jeg mente at der allerede er et felt hvor jeg indtaster prisen i Euro, men at jeg gerne ville have et felt nedenunder der automatisk indsætter prisen i DKr
Avatar billede mugs Novice
11. september 2003 - 22:06 #20
Hvis feltet med Dkr ikke ligger i tabellen, skal du tage en Tekstboks fra din værktøjskasse og placere den på din formular.

I deT felt hvori du indtaster prisen i Euro skal du indsætte en kode i hændelsen BeforeUpdate (Føropdatering). Lad os sige at din ubundne Tekstboks hedder "Tekst0":

Me.Tekst0 = Me.Navnet på Euro feltet * Kursen

Du skal rette kursen til den aktuelle kurs
Avatar billede lakse Nybegynder
11. september 2003 - 22:07 #21
ok..prøver lige
Avatar billede mugs Novice
11. september 2003 - 22:07 #22
bemærk, at ghver gang du sætter et æpunktum (Punktumnotation) får du en Dropdown liste, hvori du finder det aktuelle felt. Det sikrer dig mod stavefejl.
Avatar billede lakse Nybegynder
11. september 2003 - 22:15 #23
jeps...så virker det hele...du har da godt nok styr på det her må man sige:=)
Tusind tak for hjælpen...jeg håber jeg må få din hjælp en anden gang hvis jeg trænger til det?
Lige et sidste spørgsmål....kan jeg også indsætte et + i koden hvis jeg vil lægge 70 % oven i prisen?
Avatar billede mugs Novice
11. september 2003 - 22:20 #24
Hvis 70% er din avance, så kan du ikke!!

Selvfølgelig kan du det, men 70% af hvad? Denne er ikke afprøvet, men burde fungere:

Me.Tekst0 = Me.Euro * 7.60 +((Me.Euro/100) * 70)
Avatar billede lakse Nybegynder
11. september 2003 - 22:28 #25
Jeg tror ikke den virker helt..
Avatar billede mugs Novice
11. september 2003 - 22:29 #26
Giv mig lige 5 min, så laver jeg et eksempel
Avatar billede lakse Nybegynder
11. september 2003 - 22:30 #27
ok
Avatar billede mugs Novice
11. september 2003 - 22:35 #28
Me.Euro = (Me.Dkr / 7.6) + ((Me.Dkr / 100) * 70)

Afprøvet og den giver ikke nogen fejl. Kan sende eksemplet, hvid du lægger din e-mail.
Avatar billede lakse Nybegynder
11. september 2003 - 22:36 #29
Jeg har et felt der hedder Avance...den gik ud fra min indkøbspris og udsalgspris før...men den passer ikke rigtigt mere. Den går jo ud fra at begge felter er dkr. og tager ikke højde for at Indkøbspris"feltet" er i Euro... skal vi lave et nyt felt med avance eller kan det laves om?
Avatar billede lakse Nybegynder
11. september 2003 - 22:36 #30
øjeblik prøver lige efter
Avatar billede lakse Nybegynder
11. september 2003 - 22:40 #31
OK...mit ene felt hedder Indkøbspris og det andet hedder Udsalgspris....Indkøbspris er = Euro og Udsalgspris er = Dkr

Me.Indkøbspris = (Me.Udsalgspris / 7.6) + ((Me.Udsalgspris / 100) * 70)

Jeg får en fejl på det
Avatar billede mugs Novice
11. september 2003 - 22:43 #32
Hvilken fejl?
Avatar billede lakse Nybegynder
11. september 2003 - 22:46 #33
jeg får en Macro fejl i den nye linie som du lige sendte..
Jeg indtaster Indkøbsprisen i Euro og skulle så gerne få min udsalgspris i Dkr + 70 % i avance
Avatar billede lakse Nybegynder
11. september 2003 - 22:47 #34
undskyld..70 % ligges oveni til frangt told..osv
Avatar billede lakse Nybegynder
11. september 2003 - 22:48 #35
har du evt. icq eller messenger?
Avatar billede mugs Novice
11. september 2003 - 22:50 #36
Hverken icq eller messenger. Giv mig lige et par minutter.
Avatar billede lakse Nybegynder
11. september 2003 - 22:51 #37
ok
Avatar billede mugs Novice
11. september 2003 - 23:03 #38
Prøv denne:

Dim a As Currency
a = (Me.Indkøbspris * 7.6)
Me.Udsalgspris = a + ((Me.Indkøbspris * 7.6 / 100) * 70)

jeg er ved at være lidt firkantet i øjnene, så jeg lukker snart ned for iaften. Jeg vil gerne hjælpe dig videre. Det er kun et spørgsmål om at være lidt mere klar i hovedet. Hvis dette ikke fungerer vil jeg bede dig sende din db. Så ser jeg på det imorgen.
Avatar billede lakse Nybegynder
11. september 2003 - 23:14 #39
ok..kigger på det..har lige sendt en mail til dig...senderogså lige min DB.
Snakkes i morgen så..godnat
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