Rijen aflopend verbergen

Status
Niet open voor verdere reacties.

janmulder85

Gebruiker
Lid geworden
11 aug 2007
Berichten
63
Goedenavond,

Graag zou ik de oplossing vinden voor mijn probleem.

Ik ben bezig om in excel twee knoppen te maken die een verborgen bereik rij voor rij zichtbaar maakt of juist verbergt. Zeg maar dat rijen 23 t/m 60 verborgen zijn.

Als ik op de knop '+' klik, verschijnt rij 23, nog een keer klikken verschijnt rij 24 enz. Dit is prima gelukt via een macro onder een knop.

Nu lukt het mij niet om onder de knop '-' de rijen weer 1 voor 1 achtereenvolgens te verbergen. De bedoeling is dat de hoogst zichtbare rij eerst verborgen wordt, dus eerst 25, dan 24 en als laatste 23.

Wie kan mij helpen met deze code? Ik heb zelf al vanalles geprobeerd en kom niet verder dan deze code:

Code:
Sub rij_verwijderen()
    
Application.ScreenUpdating = False
    
    For r = 23 To 60
    If Range("C" & r) = "" Then
        Rows(r).Hidden = True
    End If
    Next r
  
End Sub

Het vervelende is dat nu de rijen niet van hoog naar laag worden verwijderd en dat alles tegelijkertijd word verwijderd...

Wie weet een oplossing?
 
janmulder85,

Heb je al naar de code gekeken van het oproepen (tonen)?
Het lijkt mij dat je nu alles selecteert en dan verbergt.

Misschien kun je de code van rij tonen wel gebruiken en aanpassen voor het verbergen?
 
Code:
Sub rij_verbergen()
  For r = 60 To 23 step -1
    Rows(r).Hidden = not rows(r).hidden
  Next 
End Sub

Code:
Sub rij_tonen()
  For r = 23 To 60
    Rows(r).Hidden = not rows(r).hidden
  Next 
End Sub
 
Hallo Wim,

Voor het zichtbaar maken gebruik ik onderstaande code:

Code:
Sub regel_zichtbaar()
    
    Dim i As Integer
    
    Do Until Rows(23 + i).Hidden = True
        i = i + 1
        
        If i > 60 Then Exit Do
        
    Loop
    
    Rows(23 + i).Hidden = False
    
End Sub

Hier ben ik wel mee aan het stoeien geweest, maar het lukt me alleen om de code zo te maken dat rij 23 als eerste verborgen wordt, terwijl dit niet de laatste rij is die zichtbaar is.

Kan dit wel door bovenstaande code aan te passen?
 
Hoi SNB,

Je code heb ik geprobeerd, maar werkt niet helemaal vlekkeloos. Hij maakt alle rijen zichtbaar die verborgen waren binnen het aangegeven bereik, en bij een volgende klik op de knop verbergt hij dezelfde rijen weer, maar hij maakt niet de laatst zichtbare rij binnen het bereik verborgen...:eek:
 
Dan heb je mijn code gewijzigd.
Plaats die gewijzigde code eens hier.
 
Ik heb de code niet inhoudelijk gewijzigd volgens mij. Maar ik heb het bestandje bijgevoegd, dat is misschien duidelijker:)
 

Bijlagen

  • Test dagrapport helpmij.xls
    61 KB · Weergaven: 32
Ik bedoel natuurlijk dat ik jouw code wel in het bestand heb gezet, maar niet heb aangepast!!

En het resultaat is dat hij vervolgens niet goed werkt. :rolleyes:

Hier ter verduidelijking de code uit het voorbeeldbestand:
Code:
Sub Regel_zichtbaar()
    
    Dim i As Integer
    
    Do Until Rows(23 + i).Hidden = True
        i = i + 1
        
        If i > 60 Then Exit Do
        
    Loop
    
    Rows(23 + i).Hidden = False
    
End Sub
Sub regel_verbergen()

    Application.ScreenUpdating = False

    For r = 60 To 23 Step -1
    Rows(r).Hidden = Not Rows(r).Hidden
    Next

End Sub

Iemand anders misschien een idee hoe dit goed werkend te krijgen?
 
janmulder85,

Ik denk dat ik het nu voorelkaar heb. (hoop ik)
 

Bijlagen

  • Test dagrapport helpmij.xls
    61,5 KB · Weergaven: 28
Hoi Wim.

Het bestandje komt inderdaad in de goede richting:)

Helaas is het nog niet helemaal zoals ik graag zou willen, omdat de rijen verwijderd worden vanaf rij 23, 24 enz. Graag wil ik dat telkens de eerste zichtbare rij onder rij 61 wordt verwijderd.

Is dit mogelijk? Ik kan de code niet zo aanpassen dat hij zo werkt...:eek:

Jan
 
janmulder85,

Het bestandje komt inderdaad in de goede richting
Helaas is het nog niet helemaal zoals ik graag zou willen, omdat de rijen verwijderd worden vanaf rij 23, 24 enz. Graag wil ik dat telkens de eerste zichtbare rij onder rij 61 wordt verwijderd.

Ik denk dat het nu voorelkaar is.
Het is wel even puzzelen geweest maar met proberen ben ik tot dit gekomen.
 

Bijlagen

  • Test dagrapport helpmij_1.xls
    79,5 KB · Weergaven: 29
Knap staaltje puzzelwerk Wim!:) het was even zoeken om je gedachtengang te volgen, maar ben er uitgekomen. Hier was ik in ieder geval zelf niet opgekomen...

Hij werkt super zo, dus bedankt voor je moeite! :thumb:
 
janmulder85,

Knap staaltje puzzelwerk Wim! het was even zoeken om je gedachtengang te volgen, maar ben er uitgekomen. Hier was ik in ieder geval zelf niet opgekomen...[
Hij werkt super zo, dus bedankt voor je moeite!

Graag gedaan, het was echt puzzelen.
Zet de vraag nog even als opgelost.
 
janmulder85,

Goede morgen.

Ik heb de code een beetje aangepast.
Tevens heb ik gezorgd dat de dagnaam wordt ingevuld.
Ook wordt het weeknummer ingevuld.

Dat was het zo'n beetje en hoop dat je er tevreden mee bent.
 

Bijlagen

  • Test dagrapport_2.xls
    79,5 KB · Weergaven: 32
Laatst bewerkt:
Daar ben ik zeker content mee, want gemak dient de mens en zo sluipen er ook minder snel foutjes in.

Bedankt voor deze extra service!:D
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan