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

Fjern focus

Jeg har gang i en knap, som kan flytte nogle medarbejder rundt mellem en subform, en liste og en kombiboks. Det virker, men det er som om at if sætningerne reagerer på eks. en kombiboks, hvis man har haft kombiboksen markeret. Det kan godt være det er mine definitioner af nul og ikke nul i if sætningerne ellers tror jeg det er noget med et focus, der bliver i listen eller kombiboksen. Problemet er at så kan programmet lige pludselig ikke køre RunSQL.
Avatar billede Slettet bruger
01. marts 2005 - 09:52 #1
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
    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
    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.ListeTirsdag.Requery
            Me.Tirsdag = Null
            Me.TirsdagKKB = Null
            Me.TirsdagMnr = Null
        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.ListeTirsdag.Requery
        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.ListeTirsdag.Requery
        End If
    End If
End If
End Sub
Avatar billede Slettet bruger
01. marts 2005 - 11:33 #2
Med andre ord hvis jeg har valgt noget i kombinationsboksen og flyttet det til subformen, det går fint. Hvis jeg så vil flytte noget fra listen, så stopper koden i den afdeling hvor Form_Listeform.RestMedarbejdereTirsdag <> " " men der er ikke markeret noget i Form_Listeform.RestMedarbejdereTirsdag?
Avatar billede Slettet bruger
02. marts 2005 - 09:36 #3
Ok jeg prøver på en anden måde...
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