Avatar billede petert Forsker
02. februar 2012 - 18:31 Der er 4 kommentarer og
1 løsning

Hjælp til afkrydsningsfeldter

Hej Alle
Jeg er ved at lave en kontrolrapport.
Jeg vil høre om nogle har et bud på om man kan lave følgende.
I Rapporten er der bl.a. 5 kolonner C,D,E,F,G som man i nogle rækker skal afkrydse.(kun krydser i C,D,E)F=dato,G=initialer(CT)
Følgende ville være optimalt.
1. man skal kunne indsætte et kryds ved at trykke med musen på cellen.
2. der skal kun kunne være kryds i en af de 3 celler i samme række.hvis man eks. vis trykker C52 (udtryk for en test ikke har bestået)hvis man så senere trykke eks. D52 indsættes krydset her og C52 slukker.
3. Man skal også på en måde kunne have alle 3 celler blanke/tomme.(slette krydset i samme række)
4. Hvis der er kryds i nogle af de 3 celler, skal der indsættes dagsdato i cellen F, samt skrives initialer eks.CT i celle G

Er der nogle der har et bud på hvordan jeg laver dette.
MVH
Petert
Avatar billede store-morten Ekspert
02. februar 2012 - 22:21 #1
Prøv:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
'1. Ved dobbeltklik i kolonner C:E
    If Not Intersect(Target, Range("C:E")) Is Nothing Then
   
'4. Dato sættes i kolonne F
    Select Case Target.Column
    Case Is = 3
    Target.Offset(0, 1).Value = ""
    Target.Offset(0, 2).Value = ""
    Target.Offset(0, 3).Value = Now
    Target.Offset(0, 4).Value = "CT"
    Case Is = 4
    Target.Offset(0, 1).Value = ""
    Target.Offset(0, -1).Value = ""
    Target.Offset(0, 2).Value = Now
    Target.Offset(0, 3).Value = "CT"
    Case Is = 5
    Target.Offset(0, -1).Value = ""
    Target.Offset(0, -2).Value = ""
    Target.Offset(0, 1).Value = Now
    Target.Offset(0, 2).Value = "CT"
    End Select
   
'2. og 3. X sættes eller fjernes i kolonner C:E
        If Target.Value = "" Then
          Target.Value = "X"
            Else
        If Target.Value = "X" Then
          Target.Value = ""
        End If
       
'Ved ingen X slettes Dato i kolonne F
    Select Case Target.Column
    Case Is = 3
      Target.Offset(0, 3).Value = ""
    Case Is = 4
      Target.Offset(0, 2).Value = ""
    Case Is = 5
      Target.Offset(0, 1).Value = ""
    End Select
         
           
'Ved ingen X slettes Initialer i kolonne G
    Select Case Target.Column
    Case Is = 3
      Target.Offset(0, 4).Value = ""
    Case Is = 4
      Target.Offset(0, 3).Value = ""
    Case Is = 5
      Target.Offset(0, 2).Value = ""
    End Select
   
    End If
        Cancel = True
    End If
End Sub
Avatar billede petert Forsker
03. februar 2012 - 13:17 #2
Hej Store-morten
Tak for dit indlæg.
Der en noget jeg gerne vil spørge dig om.
Kan du sende din mail adresse til ftsnabela.3060.dk
Petert
Avatar billede store-morten Ekspert
03. februar 2012 - 15:21 #3
Du kan sender en "intern besked" ellers adr. under min profil.
Morten
Avatar billede petert Forsker
03. februar 2012 - 18:42 #4
Hej igen
så her jeg sendt en mail til dig.
MVH
Petert
Avatar billede store-morten Ekspert
07. februar 2012 - 19:48 #5
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)

'1. Ved dobbeltklik i kolonner udvalgte celler
    If Not Intersect(Target, Range("C54:E54, C56:E56, C58:E58, C60:E60, C62:E62, C64:E64, C66:E66, C68:E68, C70:E70, C72:E72, C74:E74, C89:E89, C91:E91, C93:E93, C95:E95, C97:E97, C99:E99, C101:E101, C103:E103, C105:E105")) Is Nothing Then
   
'4. Dato sættes i kolonne B, Signatur i kolonne F, sletter andre X
    Select Case Target.Column
    Case Is = 3
    Target.Offset(0, 1).Value = ""
    Target.Offset(0, 2).Value = ""
    Target.Offset(-1, -1).Value = Format(Now, "mm-dd-yy")
    Target.Offset(0, 3).Value = Sheets(1).Range("E49").Value
    Case Is = 4
    Target.Offset(0, 1).Value = ""
    Target.Offset(0, -1).Value = ""
    Target.Offset(-1, -2).Value = Format(Now, "mm-dd-yy")
    Target.Offset(0, 2).Value = Sheets(1).Range("E49").Value
    Case Is = 5
    Target.Offset(0, -1).Value = ""
    Target.Offset(0, -2).Value = ""
    Target.Offset(-1, -3).Value = Format(Now, "mm-dd-yy")
    Target.Offset(0, 1).Value = Sheets(1).Range("E49").Value
    End Select
   
'2. og 3. X sættes eller fjernes i kolonner C:E
        If Target.Value = "" Then
          Target.Value = "X"
            Else
        If Target.Value = "X" Then
          Target.Value = ""
        End If
       
'Ved ingen X slettes Dato i kolonne B
    Select Case Target.Column
    Case Is = 3
      Target.Offset(-1, -1).Value = ""
    Case Is = 4
      Target.Offset(-1, -2).Value = ""
    Case Is = 5
      Target.Offset(-1, -3).Value = ""
    End Select
         
           
'Ved ingen X slettes Initialer i kolonne F
    Select Case Target.Column
    Case Is = 3
      Target.Offset(0, 3).Value = ""
    Case Is = 4
      Target.Offset(0, 2).Value = ""
    Case Is = 5
      Target.Offset(0, 1).Value = ""
    End Select
   
    End If
        Cancel = True
    End If
    'Ved dobbeltklik i kolonner G udvalgte Dato celler
    If Not Intersect(Target, Range("G75, G106")) Is Nothing Then
    Target.Offset(0, 0).Value = Format(Now, "mm-dd-yy")
   
    End If
End Sub
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
Excel kurser for alle niveauer og behov – find det kursus, der passer til dig

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

IT-JOB

Netcompany A/S

IT Consultant

Capgemini Danmark A/S

Finance Lead (SAP)

Netcompany A/S

Network Engineer

Netcompany A/S

Test Consultant