• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Voorwaardelijke opmaak op basis van een filter

Status
Niet open voor verdere reacties.

Evelthoven

Gebruiker
Lid geworden
26 sep 2006
Berichten
690
Goedemorgen,

Ik heb een erg groot bestand met gevulde kolommen A tot en met AB.
In de kop heb ik in deze kolommen een filter ingesteld.
Mijn vraag is nu of het mogelijk is dat als ik een bepaalde kolom wil filteren dat deze dan een bepaalde kleur krijgt. Ik heb dit al geprobeerd via voorwaardelijke opmaak alleen is dit niet gelukt.
Bv. In cel K1 staat een "filterpijltje". Wat ik nu graag wil is dat als ik op deze cel klik om iets te gaan filteren dat dan kolom K een kleur krijgt.

Kan iemand mij hierbij helpen ?

Alvast bedankt.

Gr.
Eric
 
Code:
Dim iCol As Integer
    If Target.Row = 1 Then
    Cells.Interior.ColorIndex = xlNone
    For iCol = 1 To 28
        If Blad1.AutoFilter.Filters(iCol).On Then Columns(iCol).EntireColumn.Interior.Color = vbRed
    Next
    End If

Met vriendelijke groet,


Roncancio
 
Hallo Roncancio,

Als ik je code in een nieuwe module plak (in This Workbook) dan krijg ik hem niet draaiend. Wat doe ik dan verkeerd ?

Ik had ook een beginregel ingevoerd: Sub VoorwaardelijkeOpmaak() en een eindregel met End Sub.
 
Je deed alles goed.
Je hoeft alleen nog de macro VoorwaardelijkeOpmaak te starten.

Met vriendelijke groet,


Roncancio
 
Dag Roncancio,

If Target.Row = 1 Then

Als ik de macro wil uitvoeren dan ontstaat er een fout; bovengenoemde regel in de code wordt geel.
Mijn kennis van VBA is vrijwel nul, dus helaas weet ik nu niet wat ik moet doen om tot een oplossing te komen.

Wil je aub er nog eens naar kijken ?

Alvast bedankt.
 
Code:
Sub VoorwaardelijkeOpmaak() 
Dim iCol As Integer
    Cells.Interior.ColorIndex = xlNone
    For iCol = 1 To 28
        If Blad1.AutoFilter.Filters(iCol).On Then Columns(iCol).EntireColumn.Interior.Color = vbRed
    Next
End Sub

Met vriendelijke groet,


Roncancio
 
Misschien ben ik wel heel erg lastig maar ondanks dat ik nu weer iets verder ben toch nog een foutmelding:

If Dynalite.AutoFilter.Filters(iCol).On Then Columns(iCol).EntireColumn.Interior.Color = vbRed

Het deel van bovenstaande regel: If.........Then wordt geel.

Sorry
 
Verander ...

Code:
        If Blad1.AutoFilter.Filters(iCol).On Then Columns(iCol).EntireColumn.Interior.Color = vbRed

... in ...


Code:
        If Worksheets(" Dynalite").AutoFilter.Filters(iCol).On Then Columns(iCol).EntireColumn.Interior.Color = vbRed

Blad1 staat niet voor de naam van het werkblad die de gebruiker geeft aan het bestand maar voor de naam van het werkblad zoals deze bij Excel bekend is.
Door mijn wijziging kijkt VBA nu naar het werkblad Dynalite.

Met vriendelijke groet,


Roncancio
 
Status
Niet open voor verdere reacties.

Nieuwste berichten

Terug
Bovenaan Onderaan