Avatar billede pdom Nybegynder
13. maj 2005 - 18:58 Der er 9 kommentarer og
2 løsninger

Vise felt fra hovedform i underform

Hej!

Det virker så logisk når man tænker på det, jeg kan bare ikke få det skruet rigtigt sammen ;-(

Jeg har en hovedformular med feltet Id og feltet Navn. Når jeg klikker på en knap, åbner der en underformular (Afdeling), hvor jeg kan have flere afdelinger under Navn (filtreret på Id).
Jeg vil nu gerne have indholdet af Navn flyttet med over i min underformular. Indholdet skal kun kunne ses for overblikkets skyld. Dvs. at det skal ikke kunne redigeres eller slettes.

Nogen der har et bud på dette?
Avatar billede hrlaust Nybegynder
13. maj 2005 - 19:10 #1
det har jeg sgu os tit tænkt på hvordan man gør :S Lytter lige med :)
Avatar billede mugs Novice
13. maj 2005 - 19:37 #2
I den formular der ligger til grund for underformularen, kan du sætte egenskaben aktiveret til Nej og egenskaben Låst til Ja. Det betyder, at markøren ikke kan "lande" i feltet og du kan således heller ikke rette.

Jeg vil gætte på, at du har en forespørgsel til grund for din underformular. Derfor mener jeg, at du bør lave en formular og på grundlag af denne din underformular. Det gør samtidig, at du i "grundformularen" kan lave formatteringer med farver, fjerne skillelinier m.v. Disse egenskaber nedarves til din underformular.
Avatar billede pdom Nybegynder
13. maj 2005 - 19:53 #3
Der ligger ikke nogen forespørgsel til grund for underformularen.
Jeg har allerede lavet underformularen, og kom i tanke om, at det ville være rart hvis man kunne se feltet Navn på underformularen også!
Avatar billede mugs Novice
13. maj 2005 - 19:54 #4
Hvilket type objekt har underformularen som postkilde?
Avatar billede pdom Nybegynder
13. maj 2005 - 20:01 #5
I hovedformularen har knappen en hændelse ved klik:

Sub SkiftKæde_Click()
On Error GoTo SkiftKæde_Click_Err

    If ChildFormIsOpen() Then
        CloseChildForm
    Else
        OpenChildForm
        FilterChildForm
    End If

SkiftKæde_Click_Exit:
    Exit Sub

SkiftKæde_Click_Err:
    MsgBox Error$
    Resume SkiftKæde_Click_Exit

End Sub
Private Sub FilterChildForm()

    If Me.NewRecord Then
        Forms![Afdeling].DataEntry = True
    Else
        Forms![Afdeling].Filter = "[Id] = " & Me.[Id]
        Forms![Afdeling].FilterOn = True
    End If

End Sub
Private Sub OpenChildForm()

    DoCmd.OpenForm "Afdeling"
    If Not Me.[SkiftKæde] Then Me![SkiftKæde] = True

End Sub
Private Sub CloseChildForm()

    DoCmd.Close acForm, "Afdeling"
    If Me![SkiftKæde] Then Me![SkiftKæde] = False

End Sub
Private Function ChildFormIsOpen()

    ChildFormIsOpen = (SysCmd(acSysCmdGetObjectState, acForm, "Afdeling") And acObjStateOpen) <> False

End Function

Underformularen bygger på tabellen Afdeling.

Hvis du skal have flere opklarende svar, må det nok vente til i morgen, da jeg skal i byen nu.
Avatar billede mugs Novice
13. maj 2005 - 20:06 #6
Ok - Det er ikke hvad vi i normal forstand betragter som en underformular. du bruger sammenkædede formularer. Så skal du blot trække feltet "navn" ind i din childform. hvis childform bygger på en forespørgelse, skal du først sørge for, at feltet "navn" er med der.
Avatar billede pdom Nybegynder
14. maj 2005 - 00:05 #7
Hmmm!
Jeg har nu prøvet: kopieret feltet Navn fra formular til childform - intet resultat.
Oprettet feltet Navn i tabellen Afdeling, lavet en en-til-en relation, og så trukket feltet ind fra Afdeling til childformen - intet resultat.
Eneste resultat er 17 grå hår mere ;-)

PS: ovenstående kode er ikke noget jeg selv har lavet. Det har Access gjort for mig, da jeg delte min DB op i flere tabeller.

Flere forslag, mugs? (eller andre)
Avatar billede pdom Nybegynder
14. maj 2005 - 00:10 #8
He - He!

Pludselig kom lyset:

Kontrolelementkilde til feltet: =Formularer!Kundedatabase1!Navn

Tak for det, mugs.
Du fik mig på rette spor!
Avatar billede pdom Nybegynder
14. maj 2005 - 00:11 #9
Håber du er tilfreds med pointfordelingen (selvom jeg godt ved at 5 points ikke er meget for dig)
Avatar billede mugs Novice
14. maj 2005 - 06:26 #10
Blot du fik det til at fungere, så er jeg tilfreds.
Men der er noget der undrer mig med din løsning, når du kan opnå resultatet med dit forslag. Det kunne tyde på, at du opretter en ubunden tekstboks og derefter giver den en postkilde.

Af ren nysgerrighed, kan du så sende db til.

mugs@mail.dk
Avatar billede pdom Nybegynder
14. maj 2005 - 08:56 #11
mugs > er sendt!
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