Avatar billede yxos Nybegynder
16. januar 2006 - 14:55 Der er 14 kommentarer og
2 løsninger

Positionering i subform, fra event i main form

Dette er en fortsættelse af problemet i http://www.eksperten.dk/spm/679949.

Recap:
frmMain er hovedform; den har ingen tilknyttet tabel.
Den har derimod en del subforms, som har tilknyttet tabellen med navn "Tabel1".

I frmMain ønsker jeg en knap til at tilføje en ny record i Tabel1.
Det gør jeg sådan:

Private Sub cmdKnap_Click()
  Dim rs As ADODB.Recordset
  Dim Nam As String
  'Nam = InputBox("Angiv den nye værdi!", "Opret ny værdi")
  Nam = "New Name"
  If Len(Nam) > 0 Then
    Set rs = New ADODB.Recordset
    rs.Open "Tabel1", CurrentProject.Connection, adOpenKeyset, adLockOptimistic
    rs.AddNew
    rs!Navn = Nam
    rs.Update
    rs.Close
    Set rs = Nothing
   
    frmListe.Requery
  End If
End Sub


Til slut i denne event laver jeg en Requery for frmListe.
frmListe er en Subform til frmMain, som indeholder alle min records.

Efter Requery så vises den nye record fint nok, men liste starter fra toppen, og jeg skal manuelt scrolle ned og finde den i bunden og markere den.

Findes der ikke en kommando som kan gøre det for mig ?
Altså, positionere til den sidste record og gøre den current ?
Avatar billede mugs Novice
16. januar 2006 - 14:58 #1
DoCmd.GoToRecord acForm, "FORMULARNAVN", acLast
Avatar billede yxos Nybegynder
16. januar 2006 - 15:16 #2
Så får jeg fejl 'Formular "frmListe" er ikke åbent"
Avatar billede yxos Nybegynder
16. januar 2006 - 15:19 #3
det skal siges, at den rent faktisk GÅR til den sidste record i frmListe.
Men det ville jo være dejligt at der ikke kom den fejl...
Avatar billede -anders- Juniormester
16. januar 2006 - 15:21 #4
Jeg tror det fordi dine records ligger i en subform, prøv dette

Me!frmliste.SetFocus
DoCmd.GoToRecord,,acLast
Avatar billede mugs Novice
16. januar 2006 - 15:22 #5
Hmm - Når den rent faktisk går til den sidste record ved db jo, at formularen er åben, så jeg er lidt på bar grund her.
Avatar billede -anders- Juniormester
16. januar 2006 - 15:25 #6
Hej mugs, Me!frmliste.SetFocus reff. til subformen som et kontrolelement, og ikke som en formular, jeg tror det er her den ligger begravet :o), da records jo netop ligger i en subform skal der reff. til kontrolelemenet (frmliste) og ikke selve formularen

Jeg har testet denne og ser ud til at virke:

Me!frmliste.SetFocus
DoCmd.GoToRecord,,acLast
Avatar billede yxos Nybegynder
16. januar 2006 - 15:30 #7
og det gør den.
Tak aandersen. Smid et svar.
Avatar billede mugs Novice
16. januar 2006 - 15:32 #8
Selvfølgelig
Avatar billede -anders- Juniormester
16. januar 2006 - 15:32 #9
Selv tak, men jeg syntes nu at mugs og skal dele point, da mugs jo helt klart leder os på rette vej :o).
Avatar billede -anders- Juniormester
16. januar 2006 - 15:34 #10
Jeg har nu ikke helt opgivet den anden metode, noget med Bookmark og Clone, jeg tror at denne metode er noget mere dynamisk også i forhold til evt. ændringer senere feks. tvungen sortering
Avatar billede yxos Nybegynder
16. januar 2006 - 15:38 #11
jamen så må mugs jo osse smide et svar :-)

Jeg er nu ellers godt tilfreds med denne løsning
Avatar billede -anders- Juniormester
16. januar 2006 - 15:41 #12
Så holder vi os til den, du er altid velkommen i denne tråd hvis du senere fortryder :o)
Avatar billede mugs Novice
16. januar 2006 - 15:43 #13
Tak
Avatar billede -anders- Juniormester
16. januar 2006 - 15:48 #14
Tak for point,hvis du vil øge læsevenligheden når der flyttes til sidste post kan du skrive dette, men det er helt sikker en smagssag

Me!frmliste.SetFocus
DoCmd.GoToRecord,,acLast
DoCmd.RunCommand acCmdSelectRecord

Sidste kodelinje markere hele posten på "på langs"
Avatar billede -anders- Juniormester
16. januar 2006 - 15:52 #15
16/01-2006 15:48:33 forudsat at din subform vises som et dataark og ikke standard fortløbende
Avatar billede yxos Nybegynder
16. januar 2006 - 15:53 #16
Næ tak, jeg har præcis hvad jeg skal bruge, men så fik vi da den krølle med :-)
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