Avatar billede anne_aat Mester
04. maj 2021 - 07:52 Der er 2 kommentarer og
1 løsning

Skjul og vis rækker baseret på værdi i celler

Hej Eksperter,

Kan I mon hjælpe mig?

Jeg har følgende kode, den skal hjælpe med at skjule og vise rækker, hvor et bestemt ord står i forskellige celler.

Jeg har indsat nedenstående kode:


Sub HideRows()

    Dim rCheck As Range
    Dim rHide As Range
    Dim rCheckCell As Range

    Set rCheck = ActiveWorkbook.Worksheets("Beregner").Range("A1:AA600")
    rCheck.EntireRow.Hidden = False

    For Each rCheckCell In rCheck.Cells
        If InStr(1, rCheckCell, "Tillæg", vbTextCompare) > 0 Then
            If Not rHide Is Nothing Then Set rHide = Union(rHide, rCheckCell) Else Set rHide = rCheckCell
        End If
    Next rCheckCell

    If Not rHide Is Nothing Then rHide.EntireRow.Hidden = True

End Sub
___________________________________________________________

Sub UnhideRows()

    Dim rCheck As Range
    Dim rHide As Range
    Dim rCheckCell As Range

    Set rCheck = ActiveWorkbook.Worksheets("Beregner").Range("A1:AA600")
    rCheck.EntireRow.Hidden = False

    For Each rCheckCell In rCheck.Cells
        If InStr(1, rCheckCell, "Tillæg", vbTextCompare) > 0 Then
            If Not rHide Is Nothing Then Set rHide = Union(rHide, rCheckCell) Else Set rHide = rCheckCell
        End If
    Next rCheckCell

    If Not rHide Is Nothing Then rHide.EntireRow.Hidden = False

End Sub

Min udfordring er, at når den skjuler rækker, så skjuler den de der står tillæg i, men viser alle de der var skjult i forvejen. Og den kode der skal vise de række der står tillæg i (som er skjult), der viser den også alle (også hvis der er andre skjulte, hvor der ikke står tillæg i).

Er der nogen der har en god idé til hvad jeg kan ændre?

God dag.
Avatar billede terry Ekspert
04. maj 2021 - 16:21 #1
These lines unhide ALL rows in the range Range("A1:AA600") before any rows are hidden/unhidden

rCheck.EntireRow.Hidden = False

So if you comment out (or remove) these lines the code wont start by hiding/unhiding line.

If thats not the problem then maybe you need to explain in more detail
Avatar billede anne_aat Mester
05. maj 2021 - 15:24 #2
Thank you Terry!
That was exactly what I needed :)
Avatar billede terry Ekspert
05. maj 2021 - 15:36 #3
Great, and thank you too :-)
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
Kurser inden for grundlæggende programmering

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