Print side | Luk vindue

Flyr SetFocus til en anden formular

Udskrevet fra: Dansk Access Forum
Kategori: Hjælp til Access
Forum navn: Formularer (Forms)
Forum beskrivelse: Spørgsmål vedr. formularer og alt hvad der vedrører disse
Web-adresse: https://www.accessforum.dk/forum_posts.asp?TID=119
Udskrevet den: 20-04-2024 kl. 00:29


Emne: Flyr SetFocus til en anden formular
Besked fra: PoulS
Emne: Flyr SetFocus til en anden formular
Posteringsdato: 22-01-2018 kl. 23:01
Hej jeg har et problem. Jeg har en formular med en under formular og jeg har lavet denne her
Private Sub Kombinationsboks76_Enter()

If IsNull([Kombinationsboks67]) Then

Dim Msg, Style, Title, Help, Ctxt, Response, MyString
Msg = "Du har ikke indtastet en bankkonto eller kassekonto. Vil du det tryk Ja. Hvis du ikke vil forsætte tryk Nej ?"    ' Define message.

Style = vbYesNo + vbCritical + vbDefaultButton2     ' Define buttons.
Title = "MsgBox Bankkonto "    ' Define title.
Help = "DEMO.HLP"    ' Define Help file.
Ctxt = 1000    ' Define topic
        ' context.
        ' Display message.
Response = MsgBox(Msg, Style, Title, Help, Ctxt)
If Response = vbYes Then    ' User chose Yes.
    MyString = "Yes"
      Me![Kombinationsboks67].SetFocus
Else    ' User chose No.
    MyString = "No"
    Me![Formularer]![Indkøb]![Felt44].SetFocus

End If
End If

Og det går fint med at flytte SetFocus så længe der er i samme formular men jeg kan ikke flytte SetFocus til den anden formular.Det er den sidste liene der er noger galt i. Håber at I Kan hjælpe.



Svar:
Besked fra: hkh
Posteringsdato: 23-01-2018 kl. 18:01
du skal bruge følgende:
Forms!Navnetpådinformular!navnetpåfeltetmeddinunderformular!felt.setfocus

-------------
Hans


Besked fra: PoulS
Posteringsdato: 23-01-2018 kl. 21:21
Er det sådan du mener
Me!Forms!Indkøb!Felt44!felt.SetFocus

for der kommer en fejl kan ikke finde Forms


Besked fra: hkh
Posteringsdato: 29-01-2018 kl. 11:57
forms henviser til registret over formularer i dit program, så der skal ikke være "me!" foran, "me!" henviser til til det aktive object.

så det skal være noget i retning af forms!indkøb!felt44!form!felt.setfocus
men det er gætværk da jeg ikke kender navn på felter og formularer.

Jeg antager, at felt44 er det felt/object der indeholder din underformular.


-------------
Hans


Besked fra: PoulS
Posteringsdato: 29-01-2018 kl. 14:17
Ja jeg tænkte nok at der ikke skulle stå Me foran
Indkøb er navnet på formularen og Felt44 er feltet som der skal sættes focus på

Der kommer forsat en fejl der siger at den ikke kan finde formularen indkøb    


Besked fra: hkh
Posteringsdato: 30-01-2018 kl. 11:33
Du kan ikke henvise til et felt i en underformular uden at fortælle Access at det er i en underformular.

Hvis det er som følge af en handling i din formular indkøb, kan du benytte: Feltnavnet_der_holder_din_underformular.form!Felt44.

Hvis det er lettere kan du benytte udtryksgeneratoren.
Den kan du åbne som følge af en hændelse i indkøbsformularen, der kan du vælge hændelsesprocedure, udtryksgenerator eller kodegenerator. Når udtryksgeneratoren er åbnet, vælger du formularer(forms), aktive formularer og din underformular, så kan du vælge feltliste i kolonne 2, og feltet i k9olonne 3.
Når du klikker på [Indsæt] indsættes koden i det øverste vindue.

-------------
Hans


Besked fra: PoulS
Posteringsdato: 30-01-2018 kl. 22:12
Hej hkh
Først tak for din hjælp men jeg ikke få det til at virke. Jeg syndes også at der må mangle noget når Me henviser til den aktuelle formular skal der så ikke stå noget med GOTO eller noget som det?.
Jeg forstår det lidt bedre nu Min hoved formular heder Klade og underformularen heder Indkøb og feltet Felt44.
   


Besked fra: hkh
Posteringsdato: 31-01-2018 kl. 10:23
hvilken version af Access benytter du?

-------------
Hans


Besked fra: PoulS
Posteringsdato: 31-01-2018 kl. 21:39
Access 2016


Besked fra: hkh
Posteringsdato: 01-02-2018 kl. 10:46
Kan du lave en zip-fil med en kopi som er konverteret til 2007 versionen og vedhæfte den.


-------------
Hans



Print side | Luk vindue