Avatar billede frbl Nybegynder
15. januar 2013 - 18:30 Der er 2 kommentarer og
1 løsning

Vælg ark vol. 2

Hej

Jeg fik denne stump af flinke Store-Morten igår, men jeg kunne godt tænke mig at fortsætte med at vælge i andre rubrikker, f.eks. ved kryds i "D4" vælges kun ark 3 - ved kryds i "D5" vises kun ark 4 - mere så jeg kan se hvordan det kan laves en længere programmerings streng hvor der udelukkes mere end et andet felt.

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("D2")) Is Nothing Then
    Application.ScreenUpdating = False
        If Target.Value = "x" Then
        Range("D3").Value = ""
        Worksheets(2).Visible = True
        Worksheets(3).Visible = True
        Worksheets(4).Visible = False
        Else
        Worksheets(2).Visible = False
        Worksheets(3).Visible = False
        Worksheets(4).Visible = False
    End If
    End If
   
        If Not Intersect(Target, Range("D3")) Is Nothing Then
        Application.ScreenUpdating = False
        If Target.Value = "x" Then
        Range("D2").Value = ""
        Worksheets(2).Visible = True
        Worksheets(3).Visible = True
        Worksheets(4).Visible = True
        Else
        Worksheets(2).Visible = False
        Worksheets(3).Visible = False
        Worksheets(4).Visible = False
    End If
    End If
    Application.ScreenUpdating = True
End Sub
Avatar billede store-morten Ekspert
15. januar 2013 - 20:12 #1
Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Intersect(Target, Range("D2")) Is Nothing Then
    Application.ScreenUpdating = False
        If Target.Value = "x" Then
        Range("D3").Value = ""
        Range("D4").Value = ""
        Worksheets(2).Visible = True
        Worksheets(3).Visible = True
        Worksheets(4).Visible = False
        Else
        Worksheets(2).Visible = False
        Worksheets(3).Visible = False
        Worksheets(4).Visible = False
    End If
    End If
        If Not Intersect(Target, Range("D3")) Is Nothing Then
        Application.ScreenUpdating = False
        If Target.Value = "x" Then
        Range("D2").Value = ""
        Range("D4").Value = ""
        Worksheets(2).Visible = False
        Worksheets(3).Visible = True
        Worksheets(4).Visible = True
        Else
        Worksheets(2).Visible = False
        Worksheets(3).Visible = False
        Worksheets(4).Visible = False
    End If
    End If
        If Not Intersect(Target, Range("D4")) Is Nothing Then
        Application.ScreenUpdating = False
        If Target.Value = "x" Then
        Range("D2").Value = ""
        Range("D3").Value = ""
        Worksheets(2).Visible = True
        Worksheets(3).Visible = True
        Worksheets(4).Visible = True
        Else
        Worksheets(2).Visible = False
        Worksheets(3).Visible = False
        Worksheets(4).Visible = False
    End If
    End If
    Application.ScreenUpdating = True
End Sub
Avatar billede frbl Nybegynder
15. januar 2013 - 21:44 #2
Tak for hjælpen - denne gang med dine meget fortjente point ;-)
Avatar billede frbl Nybegynder
26. januar 2013 - 14:08 #3
Hej

Når jeg udbreder dette til flere felter får jeg at vide at koden er for lang, kan man f.eks. oprette flere korter makroer der definerer hvert enkelt felt?
Et der bestemmer hvad der skal ske når der sættes et kryds i felt "E3" en anden der definerer hvad der skal ske når man sætter kryds i felt "F3"

Altså som ovenstående blot delt op i flere dele?
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
Vi har et stort udvalg af Excel kurser. Find lige det kursus der passer dig lige her.

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