Avatar billede jnh Nybegynder
01. september 2004 - 15:10 Der er 22 kommentarer og
1 løsning

Vise record, når form åbnes

Hej Kloge!

Hvordan får man en VB til at åbne en form og vise en bestemt record?

Jeg har 2 forms.
Den ene henter jeg noget data ud. herefter vælger jeg den ønskede post og så skal man så åbne en ny form, hvor alle informationer om denne post så er.
Håber i forstår...

Jeg er ny i det her program, så ja, det skal ind med ske :P

//Jesper
Avatar billede jensen363 Forsker
01. september 2004 - 15:21 #1
Det kan gøres på mange måder. Er der tale om en subform, kan du benytte filter Overordnede- hhv. underordnede felter
Avatar billede hubs Nybegynder
01. september 2004 - 15:33 #2
Hejsa ville lige høre, om jeg har forstået det rigtigt. Du har en form, hvor du vælger hvilke info/data, du gerne vil se, derefter trykker du fx. på en knap, som så åbner en ny form, som så viser dig data defineret ud fra valget i den første form...

Er det sådan nogenlunde hvordan du gerne vil ha' det til at foregå? c",)
Avatar billede jnh Nybegynder
01. september 2004 - 15:37 #3
Jeg har en form, hvor jeg vælger navn.
Derefter vises alle de firmaer der har en ansat med det navn i et SUBvindue
...
Jeg vil nu gerne have mulighed for at se alle info om det firma, som jeg vælger fra SUBvinduet.
Jeg har allerede en form, der kan vise info om virksomheden - Jeg skal bare åbne den og bladre hen til den rigtige record.

//Jesper
Avatar billede hubs Nybegynder
01. september 2004 - 15:45 #4
Du kan evt. sende den til mig (zippet), så vil jeg meget gerne kigge på den senere i aften hvis det er... c",)

Min Æmail er jacob.simonsen[at]kabelnettet.dk
Avatar billede jnh Nybegynder
01. september 2004 - 15:50 #5
kan jeg desværre ikke... - det er firmaets politik!

men et eksempel ville være fedt - evt. bare nogle hints i den rigtige retning

//Jesper
Avatar billede jensen363 Forsker
01. september 2004 - 15:50 #6
Eventuelt kan du tilknytte form2 til en forespørgsel med kriteriet :

  WHERE (((Form2.Valg)=[Formularer]![Form1]![Valg]));
Avatar billede hubs Nybegynder
01. september 2004 - 15:58 #7
Jeg vil gerne prøve, at se om jeg kan strikke et eksempel sammen, som jeg kan sende til dig, men det bliver ikke før i aften, jeg får kigget på det, hvis det er okay. c",)
Avatar billede jnh Nybegynder
01. september 2004 - 16:17 #8
det jeg er meget interesseret i at vide, er bl.a. hvordan man finder ud af hvilken række, der er valgt i det query, som bliver vist i SUB-vinduet.

Samt hvordan man får en form til at vise en bestemt record, i et resultset, som allerede er knyttet. Jeg har nøglen så det er bare en søgning, går jeg ud fra (men hvordan???)

//jesper
Avatar billede mugs Novice
01. september 2004 - 16:20 #9
Som jensen363 påpeger, er det afgørende at vi får at vide, om det drejer sig om en underformular eller en helt anden formular. 

Men dit udtryk "SUBvindue" dækker måske en underformular. I så fald kan du anvende jensen's forslag med overordnede / underordnede felter.

Hvis det er en helt anden form, kan du anvende flg.:

DoCmd.OpenForm "Form2"
Forms!Form2!Felt1.SetFocus
DoCmd.FindRecord Me!Felt1

Hvor Felt1 indeholder et unikt indeks for posten i begge formularer. Hvis du lægger din e-mail, kan jeg sende dig et eksempel.
Avatar billede jnh Nybegynder
01. september 2004 - 16:27 #10
Ok, så...
Jeg har en Form "findfirma"
i den form er der en kasse "Subform/Subreport" hvis Source object er et Query

i den kasse, vil jeg så gerne kunne vælge en række fra resultatet.

Nå rækken er valgt, vil jeg gerne trykke på en knap. Denne knap skal sende information til en anden form om at den skal vise en bestemt record i den forespørgsel, den allerede viser.

//Jesper
Avatar billede jensen363 Forsker
01. september 2004 - 16:28 #11
Det er den aktuelle visning/record på Form1 som benyttes som filterkriterie på Form2

Altså :

SELECT *
FROM DinTabel
WHERE (((Form2.Valg)=[Formularer]![Form1]![Valg]));
Avatar billede jnh Nybegynder
01. september 2004 - 16:28 #12
mail: exp@jesperh.dk
Avatar billede jnh Nybegynder
01. september 2004 - 16:29 #13
nej, nej.... resultsettet i form 2 må ikke ændres... der skal bare være bladret frem til den jeg har valgt

//Jesper
Avatar billede mugs Novice
01. september 2004 - 16:37 #14
Så fungerer min kode:

DoCmd.OpenForm "Form2"
Forms!Form2!kunde.SetFocus
DoCmd.FindRecord Me!kunde

Indsæt den i en kommandoknap i din underformular. Form2 er navnet på den formular du åbner med den valgte post.
Eksempel er sendt.
Avatar billede jnh Nybegynder
01. september 2004 - 16:52 #15
Genialt... og NÆSTEN det jeg skal bruge!!!

Kan man gøre det samme med en knap som fa den der hedder "Sæt focus på underformular" ... problemet er at jeg ikke viser en underformular, men en underQuery, hvor der ikke kan være knapper...

//Jesper
Avatar billede mugs Novice
01. september 2004 - 16:56 #16
"som fa den" ??
Avatar billede jnh Nybegynder
01. september 2004 - 16:58 #17
fa = fx

//Jesper
Avatar billede mugs Novice
01. september 2004 - 16:59 #18
Jeg vil til hver en tid lave en underformular.

Lav en formular på baggrund af din underquery og formater den ved hjælp af farver m.v. Indsæt en kommandoknap i formularen med min kode. Afprøv om det fungerer. Åbn herefter din form1 og lav en underformular med baggrund i den form fu lige har lavet.
Avatar billede mugs Novice
04. september 2004 - 21:43 #19
jnh -> Hvordan går det?
Avatar billede jnh Nybegynder
07. september 2004 - 08:42 #20
hmm... så er han atter aktiv...

hvordan laver man en underformular, der viser alle resultater fra et query? ... det skal ikke være noget, hvor man skal bladre igennem dem!, men en liste...

navn1  | adresse  | tlf
navn2  | adresse  | tlf
navn3  | adresse  | tlf

ellers tror jeg bare jeg finder en anden løsning på opgaven... Så skal der tænkes kreativt :P

//Jesper
Avatar billede mugs Novice
07. september 2004 - 09:14 #21
Hej Jesper

Nu skal vi først have begreberne på plads:

Hvis du med ordet "liste" virkelig mener en liste i Access-terminologien, kan du tage en Liste fra værktøjskassen og give den forespørgslen som postkilde.

Men du kan også lave en fortløbende formular på beggrund af forespørgslen. Denne formular skal så tilrettes i Egenskaberne. Du kan tillade / nægte at der oprettes, rettes, slettes i formularen. Du kan også tilrette hvert enkelt felt i dettes egenskaber, så markøren ikke kan lande i feltet og eller ændre i feltet. På denne måde bliver din formular jo en slags liste.
Når denne formular er som du ønsker, åbner du den formular hvor underformularen skal placeres. Tag en underformular fra værktøjskassen og giv den din netop fremstillede formular som postkilde.
Din underformular vil nu arve postkildens egenskaber.
Avatar billede jnh Nybegynder
07. september 2004 - 09:38 #22
præcis...

Tak for hjælpen

//Jesper
Avatar billede mugs Novice
07. september 2004 - 10:29 #23
Selv tak, og tak for point.
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