Avatar billede weinreich Nybegynder
01. april 2002 - 16:33 Der er 8 kommentarer og
2 løsninger

Hvordan går jeg fra control til control i vba (subforms)

Jeg har en form frmFirma, med subformen sfrmBil der har endnu en subform sfrmSynsDato.

Når jeg har indtastet en dato i sfrmSynsdato skal den hoppe til næste control i sfrmBil nemlig cboStatus. jeg har lavet følgende vba-kode:

DoCmd.SelectObject acForm, "sfrmBil"
DoCmd.Gotocontrol "cboStatus"

og jeg har også prøvet:

DoCmd.Gotocontrol "sfrmBil"
DoCmd.Gotocontrol "cboStatus"

men det virker kun når sfrmBil ikke er en subform i frmFirma. Hvis den er en subform får jeg at vide at den ikke er open. jeg arbejder i office 2000

Hvad gør jeg
Avatar billede weinreich Nybegynder
01. april 2002 - 17:02 #1
nu har jeg også prøvet:

DoCmd.SelectObject acForm, "frmFirma2"
DoCmd.Gotocontrol "sfrmBil"
DoCmd.Gotocontrol "cboStatus"

for at komme hele vejen ud men så siger den at der ikke er noget field named cboStatus in the current record?
Avatar billede mugs Novice
01. april 2002 - 17:46 #2
I datofeltet i underformularen sfrmSynsDato AfterUpdate indtaster du flg. kode:

DoCmf.OpenForm "sfrmBil"

som får db til at åbne formen og markere det felt, du har valgt som det første i formularens tabulatoregenskaber. Hvis markøren skal gå til et andet felt skal du tilføje.

DoCmd.Gotocontrol "Feltnavn"
Avatar billede weinreich Nybegynder
01. april 2002 - 18:05 #3
Det hjælper mig jo ikke noget for så åbner den bare subformen som en selvstændig form. Jeg vil gerne have den til at gå tilbage i den aktuelle form og ikke åbne en ny.
Avatar billede nih Novice
01. april 2002 - 20:18 #4
Parent.Controls("cboStatus").SetFocus

denne linje flytter fokus til overliggende forms control element der hedder 'cboStatus'

Niels
Avatar billede nih Novice
01. april 2002 - 20:19 #5
Svar
Avatar billede terry Ekspert
01. april 2002 - 20:21 #6
you can go to a control on a sub  form as follows.

Me!NameOfSubFormObject!Form!NameOfControl.Setfocus

Where NameOfSubFormObject is the name of the control containing the sub form, and NameOfControl is the name of the control
Avatar billede nih Novice
01. april 2002 - 20:22 #7
koden giver fejl hvis du åbner formen selvstændigt - altså uden en parent form.
vha. en errohandler kan det undgåes.

on error resume next
Parent.Controls("cboStatus").SetFocus

Niels
Avatar billede nih Novice
01. april 2002 - 20:32 #8
En bemærkning mere

vha Ctrl + tab springer du ud af subform eller faneblad

Niels
Avatar billede terry Ekspert
01. april 2002 - 20:34 #9
Hi Niels I think this should be enough going back from sub to parent parent.NameOfControl.setfocus
Avatar billede nih Novice
01. april 2002 - 20:37 #10
jeps - en genvej mere i Access's vb jeg ikke kendte ;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