Avatar billede kgndksv Juniormester
20. oktober 2009 - 12:59 Der er 3 kommentarer og
1 løsning

Koden skal laves om, men hvordan? tjekke ranges istedet for celler

Jeg har fundet følgende kode som egentlig er hvad jeg skal bruge, blot med nogle mindre(så'n da :-)) ændringer

Sub SkjulRk()
    For Each c In Range("A1:k100").Cells
        If c.Value = "x" Then
            c.EntireRow.Hidden = True
        End If
    Next c
End Sub

I stedet for at tjekke hver celle skal koden tjekke et range svarende til ("A1:K1") og helt ned til ("a100:K100")

Det den skal tjekke er om summen i disse ranges er lig end 0 og hvis det er det skal hele rækken skjules...

Er der nogen der kan forklare hvordan det skal lyde??
Avatar billede tjacob Juniormester
20. oktober 2009 - 13:08 #1
Prøv denne:

Sub SkjulRk()

    Dim i As Long, j As Long, k As Double
    For i = 1 To 100
        k = 0
        For j = 1 To 11
            k = k + Cells(i, j)
        Next j
        If k = 0 Then Cells(i, 1).EntireRow.Hidden = True
    Next i

End Sub
Avatar billede kgndksv Juniormester
20. oktober 2009 - 17:45 #2
Super - Det virker! :-) Send et svar!

Er der en generel kodelinie for at vise alle rækker igen?

jeg kan se at hvis jeg blot fjerner  If k = 0 og skriver false istedet for true så viser koden alle rækkerne igen, men tænker at den kører løkker igennem som er unødvendige for at vise alle rækker igen da den jo ikke behøber at tjække 11 celler i en rækker for at konstaterer at den skal vises...?
Avatar billede tjacob Juniormester
21. oktober 2009 - 10:24 #3
Nej du behøver slet ikke loops for at vise alle rækker

Dette vil vise alle rækker fra 1 til 100:

    Rows("1:100").Select
    Selection.EntireRow.Hidden = False
Avatar billede tjacob Juniormester
21. oktober 2009 - 12:17 #4
Eller endnu kortere: Rows("1:100").EntireRow.Hidden = False
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