Avatar billede Slettet bruger
02. marts 2005 - 09:46 Der er 2 kommentarer og
1 løsning

Fokus i lister og kombibokse

Er det muligt at "deaktivere"/"fjerne fokus fra" en liste eller en kombiboks?

Hvis man har markeret i listen/boksen, så er det som om fokus forbliver, selvom der ikke er markeret noget og også selvom fokus er flyttet til noget andet.
02. marts 2005 - 09:49 #1
du mener, at der er en sort streg?

Denne angiver jo, hvad der er valgt. Og hvis listen er bundet til et felt i databasen, så er værdien jo relevant.

Men normalt kan du bare skrive:

Me!liste = Null
Avatar billede Slettet bruger
02. marts 2005 - 09:58 #2
Nej, jeg mener ikke den sorte streg (markering). Det er fordi jeg bruger noget kode til at flytte rundt mellem en liste, en kombiboks og en subform. Det er faktisk fra dit program med at flytte mellem lister. Jeg har udvidet så det passer til mine behov, men if sætningerne f..... up når jeg har haft et valg i eks. en liste og så vil bruge en af de andre muligheder.

Jeg skal til at ud af huset indtil middag, men jeg er sikker på at me!liste=null virker, jeg vil prøve at putte det ind, de steder hvor jeg har forsøgt mig med setfocus (det virkede nemlig ikke). Her er koden hvis du er nysgerrig!~)

Option Compare Database
Option Explicit

Private Sub IndsaetTirsdag_Click()
If Form_Listeform.RestMedarbejdereTirsdag <> " " Then
    If IsNull(Me.Tirsdag) Then      'Fra kombiboks til subform
    DoCmd.SetWarnings False
    DoCmd.RunSQL "UPDATE listemedarbejderdag SET tirsdagbox = false WHERE tirsdagmedarbnr=" & Form_Listeform.RestMedarbejdereTirsdag.Column(0)
    Me.Tirsdag = Form_Listeform.RestMedarbejdereTirsdag.Column(1)
    Me.TirsdagKKB = Form_Listeform.RestMedarbejdereTirsdag.Column(8)
    Me.TirsdagMnr = Form_Listeform.RestMedarbejdereTirsdag.Column(0)
    Form_Listeform.RestMedarbejdereTirsdag.Requery
    Form_Listeform.ListeTirsdag.Requery
    Me.IndsaetTirsdag.SetFocus
    Else                            'Fra kombiboks til subform og fra subform til liste
    DoCmd.SetWarnings False
    DoCmd.RunSQL "UPDATE listemedarbejderdag SET tirsdagbox = true WHERE tirsdagmedarbnr=" & Me.TirsdagMnr
    Me.Tirsdag = Form_Listeform.RestMedarbejdereTirsdag.Column(1)
    Me.TirsdagKKB = Form_Listeform.RestMedarbejdereTirsdag.Column(8)
    Me.TirsdagMnr = Form_Listeform.RestMedarbejdereTirsdag.Column(0)
    DoCmd.SetWarnings False
    DoCmd.RunSQL "UPDATE listemedarbejderdag SET tirsdagbox = false WHERE tirsdagmedarbnr=" & Form_Listeform.RestMedarbejdereTirsdag.Column(0)
    Form_Listeform.RestMedarbejdereTirsdag.Requery
    Form_Listeform.ListeTirsdag.Requery
    Me.IndsaetTirsdag.SetFocus
    End If
Else
    If IsNull(Form_Listeform.ListeTirsdag.Column(0)) Then
        If IsNull(Me.Tirsdag) Then  'intet valgt
            MsgBox "Der er ikke valgt nogen medarbejder", , "Tholstrup Cheese A/S"
        Else                        'Medarbejder valgt i subform
            DoCmd.SetWarnings False
            DoCmd.RunSQL "UPDATE listemedarbejderdag SET tirsdagbox = true WHERE tirsdagmedarbnr=" & Me.TirsdagMnr
            Form_Listeform.RestMedarbejdereTirsdag.Requery
            Form_Listeform.ListeTirsdag.Requery
            Me.Tirsdag = Null
            Me.TirsdagKKB = Null
            Me.TirsdagMnr = Null
            Me.IndsaetTirsdag.SetFocus
        End If
    Else
        If IsNull(Me.Tirsdag) Then  'Medarbejder valgt på listen
            Me.Tirsdag = Form_Listeform.ListeTirsdag.Column(1)
            Me.TirsdagKKB = Form_Listeform.ListeTirsdag.Column(2)
            Me.TirsdagMnr = Form_Listeform.ListeTirsdag.Column(0)
            DoCmd.SetWarnings False
            DoCmd.RunSQL "UPDATE listemedarbejderdag SET tirsdagbox = false WHERE tirsdagmedarbnr=" & Form_Listeform.ListeTirsdag.Column(0)
            Form_Listeform.RestMedarbejdereTirsdag.Requery
            Form_Listeform.ListeTirsdag.Requery
            Me.IndsaetTirsdag.SetFocus
        Else                        'Medarbejder valgt på listen og i subformen
            DoCmd.SetWarnings False
            DoCmd.RunSQL "UPDATE listemedarbejderdag SET tirsdagbox = true WHERE tirsdagmedarbnr=" & Me.TirsdagMnr
            Me.Tirsdag = Form_Listeform.ListeTirsdag.Column(1)
            Me.TirsdagKKB = Form_Listeform.ListeTirsdag.Column(2)
            Me.TirsdagMnr = Form_Listeform.ListeTirsdag.Column(0)
            DoCmd.SetWarnings False
            DoCmd.RunSQL "UPDATE listemedarbejderdag SET tirsdagbox = false WHERE tirsdagmedarbnr=" & Form_Listeform.ListeTirsdag.Column(0)
            Form_Listeform.RestMedarbejdereTirsdag.Requery
            Form_Listeform.ListeTirsdag.Requery
            Me.IndsaetTirsdag.SetFocus
        End If
    End If
End If
End Sub
Avatar billede Slettet bruger
02. marts 2005 - 11:35 #3
Så er jeg her igen og det virker!~)
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