Ik maak in excel voor mijn werk af en toe formulieren.
Via voorbeelden,o.a. van dit forum probeer ik deze formulieren zo gebruiksvriendelijk te maken door acties onder knoppen te zetten zodat mijn collega's niet zelf gaan 'rommelen' in het bestand.
De meeste hebben namelijk beperkte kennis/ervaring/interesse van excel.
Ik heb dus wel interesse in excel maar een beperkte kennis/begrip van VBA
Voor het verbergen van rijen maak ik vaak gebruik van een (verborgen) hulpkolom met daarin een formule die afhankelijk van bepaalde voorwaarden bv Ja of Nee of "" invult.
Met een knop verbergen en tonen zorg ik met VBA het daadwerkelijk verbergen en weer tonen van rijen.
Ik zou echter wel eens rijen willen verbergen die aan verschillende voorwaarden voldoet.
Alleen met de huidige code is mij dat tot nu toe nooit gelukt.
Als ik de IIF regel nogmaals plaats dan geeft hij een foutmelding.
Dus hoe kan ik via VBA in verschillende Ranges laten zoeken en rijen verbergen/tonen?
Mijn huidige code die ik altijd gebruik:
Via voorbeelden,o.a. van dit forum probeer ik deze formulieren zo gebruiksvriendelijk te maken door acties onder knoppen te zetten zodat mijn collega's niet zelf gaan 'rommelen' in het bestand.
De meeste hebben namelijk beperkte kennis/ervaring/interesse van excel.
Ik heb dus wel interesse in excel maar een beperkte kennis/begrip van VBA

Voor het verbergen van rijen maak ik vaak gebruik van een (verborgen) hulpkolom met daarin een formule die afhankelijk van bepaalde voorwaarden bv Ja of Nee of "" invult.
Met een knop verbergen en tonen zorg ik met VBA het daadwerkelijk verbergen en weer tonen van rijen.
Ik zou echter wel eens rijen willen verbergen die aan verschillende voorwaarden voldoet.
Alleen met de huidige code is mij dat tot nu toe nooit gelukt.
Als ik de IIF regel nogmaals plaats dan geeft hij een foutmelding.
Dus hoe kan ik via VBA in verschillende Ranges laten zoeken en rijen verbergen/tonen?
Mijn huidige code die ik altijd gebruik:
Code:
Sub Verbergen()
Application.ScreenUpdating = False
For Each cl In [B15:B999]
cl.EntireRow.Hidden = IIf(cl.Value = "", True, False)
'For Each cl In [A15:A999]
' cl.EntireRow.Hidden = IIf(cl.Value = "XH", True, False) <-- dit werkt dus niet !!
'Next
Application.ScreenUpdating = True
End Sub
Sub Tonen()
Application.ScreenUpdating = False
For Each cl In [A15:A999]
cl.EntireRow.Hidden = IIf(cl.Value = "", False, False)
Next
Application.ScreenUpdating = True
End Sub