Skjul kolonner i VBA, hvis værdien i en celle skifter
Hej
Jeg har et skema i et excel ark, hvori der er en celle som indikere hvor mange kolonner der skal fremgå, det vil altså sige at hvis jeg i celle "E5" = 3 skal kolonne "F:H" fremkomme, og igen hvis "E5" = 7 så skal kolonne "F:L" fremkomme osv, dette gøres gældende helt op til "E5" = 20 og kolonnerne strækker sig således "F:Y". Er der en kode der kan hjælpe mig med dette problem, jeg har allerede i samme ark indskrevet disse koder:
(Denne kode laver ovenstående bare med rækker og ændre navn i fane) - denne kode virker dog ikke til kolonner, selvom jeg tilretter den med columns og de rigtige celler...
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("C4")) Is Nothing Then
If Range("C4") <> "" Then Application.ScreenUpdating = False
n = Range("C4")
Range("14:25").Rows.Hidden = False Range(15 + n & ":25").Rows.Hidden = True
Application.ScreenUpdating = True
End If
End If
If Not Intersect(Target, Range("F14")) Is Nothing Then If Target.Value <> "" Then Sheets(5).Name = Target.Value End If End If
Hvis du også vil vise nogle skjulte kolonner igen kan du bruge denne makro:
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("E5")) Is Nothing Then For x = 6 To 5 + Cells(5, 5) Columns(x).Hidden = False Next For x = 6 + Cells(5, 5) To 50 Columns(x).Hidden = True Next End If End Sub
Jens48 - Koden skjuler alle kolonner, men den skal kunne skjule dem alt efter hvad jeg taster i Celle 'E5', det vil sige at taster jeg 5 skal der vises fem af kolonnerne og de resterende 15 skal skjules osv??
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("E5")) Is Nothing Then Application.ScreenUpdating = False For x = 6 To 50 Columns(x).Hidden = True Next
For x = 6 To 5 + Range("E5") Columns(x).Hidden = False Next Application.ScreenUpdating = True End If End Sub
Synes godt om
Ny brugerNybegynder
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.