Avatar billede tisbris Nybegynder
23. september 2007 - 13:58 Der er 13 kommentarer og
1 løsning

Macro åbner altid samme record

Jeg har en formular genereret ud fra en forespørgelse og resultatet er som det skal være...

Jeg vil derefter gerne have en knap ud for hvert resultat (dataark visning), der åbner en detaljeret formular hvor man kan redigere den aktuelle record.

Jeg har kørt 'knap-guiden' (office 2007) og der åbnes også en formular som ønsket, men det er altid den samme record der kommer frem og ikke som ønsket den record man klikkede ud fra.

Macroen ser således ud:

"[LKP Nr]=" & "'" & [LKP Nr] & "'"

Hvad er der galt?
Avatar billede mugs Novice
23. september 2007 - 14:26 #1
Prøv denne:

DoCmd.OpenForm "FORMULARNAVN"
Forms!FORMULARNAVN!LKP NR.SetFocus
DoCmd.FindRecord Me!LKP NR

Det er en uskik at have mellemrum / specialtegn i feltnavnene.
Avatar billede mugs Novice
23. september 2007 - 14:27 #2
Avatar billede tisbris Nybegynder
23. september 2007 - 14:45 #3
tak for hjælpen...

jeg skynder mig at rette de små fejl :o)
Avatar billede mugs Novice
23. september 2007 - 15:14 #4
:o)
Avatar billede tisbris Nybegynder
23. september 2007 - 16:09 #5
kan denne funktion ikke udvides lidt.. :o)

jeg får nemlig også vist en knap ved den sidste record (Ny) og hvis man trykker på knappen får man en fejlmeddelelse pga. at der ikke findes en værdi der 'Null'...

Er det ikke muligt at gå til 'Ny record', hvis der ikke findes et match?

der er selvfølgelig point... 50.
Avatar billede mugs Novice
23. september 2007 - 17:36 #6
DoCmd.OpenForm "FORMULARNAVN"
Forms!FORMULARNAVN!LKP NR.SetFocus
DoCmd.FindRecord Me!LKP NR
If Me!LPK NR <> Forms!FORMULARNAVN!LPK NR Then
DoCmd.GoToRecord acForm, "FORMULARNAVN", acNewRec
End If
Avatar billede tisbris Nybegynder
23. september 2007 - 19:47 #7
der et eller andet galt...

hvis jeg benytter dit eks. så får jeg fejl i line 3, men hvis jeg gør dette..
Private Sub Kommandoknap14_Click()

DoCmd.OpenForm "ProjektUdstyr"
Forms!ProjektUdstyr!Navn.SetFocus

If Me!Navn <> Forms!ProjektUdstyr!Navn Then
DoCmd.GoToRecord acForm, "ProjektUdstyr", acNewRec

DoCmd.FindRecord Me!Navn

End If

End Sub

...åbner den på den første record??

På forhånd tak :o)
Avatar billede mugs Novice
23. september 2007 - 19:58 #8
Først åbner du en formular og søger efter en bestemt post. Derefter vil du gå til en ny post hvis den søgter post ikke findes. Det harmonerer ikke rigtigt:

DoCmd.OpenForm "ProjektUdstyr"
Forms!ProjektUdstyr!Navn.SetFocus
If Me!Navn <> Forms!ProjektUdstyr!Navn Then
DoCmd.GoToRecord acForm, "ProjektUdstyr", acNewRec
DoCmd.FindRecord Me!Navn
End If

Prøv denne:

DoCmd.OpenForm "ProjektUdstyr"
Forms!ProjektUdstyr!Navn.SetFocus
DoCmd.FindRecord Me!Navn
If Me!Navn <> Forms!ProjektUdstyr!Navn Then
DoCmd.GoToRecord acForm, "ProjektUdstyr", acNewRec
End If
Avatar billede tisbris Nybegynder
23. september 2007 - 20:12 #9
det fungerer ikke, den fejler stadig i linie 3 - DoCmd.FindRecord Me!Navn - når knappen aktiveres udfor den sidste tomme record i underformularen.

Det du skriver 'Harmonerer ikke',men det er præcis det jeg leder efter...

I en underformular har jeg en række records og udfor disse har jeg placeret denne knap, som ved klik går direkte til den aktuelle record og her er der så mulighed for at redigere i denne record, men allernederst i denne underformular ses en tom record, som er forberedt til en ny record og udfor denne er så også denne knap og ved klik på denne var ideen så at man kunne komme frem til en ny record.

En eventuel løsning kunne også være at forhindre underformularen i at præsentere denne sidste tomme record??

håber ikke du er helt forvirret :o)
Avatar billede mugs Novice
23. september 2007 - 20:33 #10
En underformular - det er en helt anden snak. For at arbejde i en underformular, er du nødt først at sætte fokus på underformularen:

Me.UNDERFORMULARENS NAVN.SetFocus
Avatar billede tisbris Nybegynder
23. september 2007 - 21:37 #11
underformularen hedder ProjektUdstyrUnderformular... og jeg har nu denne kode:

DoCmd.OpenForm "ProjektUdstyr"
Me.ProjektUdstyrUnderformular.SetFocus
DoCmd.FindRecord Me!Navn
If Me!Navn <> Forms!ProjektUdstyr!Navn Then
DoCmd.GoToRecord acForm, "ProjektUdstyr", acNewRec
End If

men nu virker intet? - fejl i linie 2 - Me.ProjektUdstyrUnderformular.SetFocus
Avatar billede mugs Novice
23. september 2007 - 21:55 #12
Denne linie:

DoCmd.OpenForm "ProjektUdstyr"

Åbner jo en ny formular. Derefter:

Me.ProjektUdstyrUnderformular.SetFocus

Vil du sætte fokus på en underformular. eksisterer denne underformular i formularen "ProjektUdstyr". Normalt er underformularer jo bundet sammen med en hovedformular med et unikt id. Så jeg er lidt i tvivl om, hvad du vil opnå.
Avatar billede tisbris Nybegynder
23. september 2007 - 23:06 #13
arbejder lige lidt videre... vender tilbage senere
Avatar billede mugs Novice
23. september 2007 - 23:20 #14
OK ;o)
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