Rijen verbergen wanneer waarde lager is

Status
Niet open voor verdere reacties.

baas1990

Nieuwe gebruiker
Lid geworden
8 jun 2012
Berichten
4
Hoi,

Ik ben op zoek naar een macro die de hele rij verbergt als de waarde in een kolom lager is dan een bepaalde waarde (aangegeven in een andere cel).

Bijvoorbeeld:

A2=1 B1=3
A3=2
A4=3
A5=4
A6=5
A7=6

Alle rijen waarvan in kolom A de waarde lager is dan B1 (3) moeten dus via deze macro verborgen worden.

Hoe doe ik dit?

Alvast super bedankt!

Gr Luuk
 
zet een knop in de eerste rij zodat de knop zichtbaar blijft en hang de volgende code onder die knop

Code:
Dim c As Range
Application.ScreenUpdating = False
With Sheets("Blad1").Columns(1)
  .SpecialCells(xlCellTypeConstants).EntireRow.Hidden = False

For Each c In Range("a2:a" & Range("A65536").End(xlUp).Row)
If c.Value < [Blad1!B1].Value Then Cells(c.Row, c.Column).EntireRow.Hidden = True
If c.Value = "" Then Cells(c.Row, c.Column).EntireRow.Hidden = False

Next
  End With

Application.ScreenUpdating = True
 
Pasan, je bent een held!

Dankjewel, het werk uitstekend =D
 
@ pasan

Aangezien je met XL2007 nu over meer rijen beschikt is het aan te raden om Rows.Count te gebruiken ipv Range("A65536"), omdat je niet weet met welke versie TS werkt.;)
 
@ Warme bakkertje

Ik heb geprobeerd je nuttige tip toe te passen (tussen het voetballen door:d)en volgens mij klopt het nu

Code:
Dim c As Range
Application.ScreenUpdating = False
With Sheets("Blad1").Columns(1)
  .SpecialCells(xlCellTypeConstants).EntireRow.Hidden = False

For Each c In Range("A2", Range("A" & Rows.Count).End(xlUp))
If c.Value < [Blad1!B1].Value Then Cells(c.Row, c.Column).EntireRow.Hidden = True
If c.Value = "" Then Cells(c.Row, c.Column).EntireRow.Hidden = False

Next
  End With

Application.ScreenUpdating = True

bij XL 2010 duurt de code wel erg lang als je in bijv. rij 1000000 een getal zet
hoe en of dit op te lossen is heb ik helaas geen oplossing voor
 
Laatst bewerkt:
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan