Dette er noget, jeg har lavwet i anden anledning. Koden ligger i kodemodulet til det ark, hvor jeg har min PullDown, som indeholde navnene på de områder, som jeg kan vælge mellem.
Koden skjuler/viser kolonner, men kan hurtigt ændres til i stedet at vise/skjule rækker.
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("a2")) Is Nothing Then Select Case Range("a2").Value Case Is = "Alle" Cells.Select Selection.EntireColumn.Hidden = False Range("A2").Select Case Is = "SKP1" Cells.Select Selection.EntireColumn.Hidden = False Range("J:AD").Select Selection.EntireColumn.Hidden = True Range("A2").Activate Case Is = "SKP2" Cells.Select Selection.EntireColumn.Hidden = False Range("B:I,T:AD").Select Selection.EntireColumn.Hidden = True Range("A2").Activate Case Is = "SKP3" Cells.Select Selection.EntireColumn.Hidden = False Range("B:S").Select Selection.EntireColumn.Hidden = True Range("A2").Activate End Select End If End Sub
Jeg har korrigeret koden således: Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("a2")) Is Nothing Then Select Case Range("a2").Value Case Is = "Total" Cells.Select Selection.EntireRow.Hidden = False Range("a80:a190").Select Selection.EntireRow.Hidden = True Range("A2").Activate Case Is = "SEL1" Cells.Select Selection.EntireRow.Hidden = False Range("a3:a79").Select Selection.EntireRow.Hidden = True Range("a132:a190").Select Selection.EntireRow.Hidden = True Range("A2").Activate Case Is = "SEL2" Cells.Select Selection.EntireRow.Hidden = False Range("a3:a131").Select Selection.EntireColumn.Hidden = True Range("A2").Activate Case Is = "All" Cells.Select Selection.EntireRow.Hidden = False Range("A2").Activate
End Select End If End Sub ________________
Men makroen aktiveres jo kun ved en ændring af A2-cellen, og dette sker jo ikke automatisk. Kan du hjælpe med dette?
I det konkrete tilfælde skrives resultatet af et ændret valg i komboksen ned i A2. derfor er det ændringen her, der "trigger" makroen. Hvornår skal den afspilles hos dig?
Jeps - det er rigtigt - jeg ser at resultat ændrer sig i cellen, men makroen aktiveres først, hvis jeg efterfølgende stiller mig i A2 og trykker "F2 + enter".
Højreklik på Compoboxen. Vælg Vis kode. Indsæt din kode mellem de to linjer, der er vist:
If Not Intersect(Target, Range("a2")) Is Nothing Then Select Case Range("a2").Value Case Is = "Total" Cells.Select Selection.EntireRow.Hidden = False Range("a80:a190").Select Selection.EntireRow.Hidden = True Range("A2").Activate Case Is = "SEL1" Cells.Select Selection.EntireRow.Hidden = False Range("a3:a79").Select Selection.EntireRow.Hidden = True Range("a132:a190").Select Selection.EntireRow.Hidden = True Range("A2").Activate Case Is = "SEL2" Cells.Select Selection.EntireRow.Hidden = False Range("a3:a131").Select Selection.EntireColumn.Hidden = True Range("A2").Activate Case Is = "All" Cells.Select Selection.EntireRow.Hidden = False Range("A2").Activate
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.