• 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.

Gekleurde cellen (VO) tellen

Status
Niet open voor verdere reacties.

Severijns

Gebruiker
Lid geworden
6 jul 2018
Berichten
139
Geachte forumleden,

Ik ben al enige tijd dit forum aan het doorzoeken en heb ook gekeken op andere fora maar het wil mij, ondanks de talloze voorbeelden en geboden oplossingen, maar niet lukken de juiste oplossing te vinden voor mijn situatie.
Dit zal ongetwijfeld liggen aan mijn gebrek aan kennis van de materie.

Op het tabblad "Opl. Status" zou ik graag het aantal gekleurde cellen tellen in een kolom.
De kleuren op het tabblad "Opl. Status" komen middels VO tot stand en daarvoor wordt gekeken naar het tabblad "Opl. Matrix" middels onderstaande formule in VO:

=INDEX('Opl. Matrix'!H$2:$CZ$112;VERGELIJKEN($F13;'Opl. Matrix'!$F$2:$F$112;0);VERGELIJKEN(H$2;'Opl. Matrix'!H$2:H$112;0))="X"
Het gebruikte bereik is (H13:CZ1013)

In het voorbeeldbestand zou ik graag op het tabblad "Opl. Status" in cel H1015 het aantal blauw gekleurde cellen tellen in het bereik (H13:H1013) van dat tabblad.
In het voorbeeldbestand zou ik graag op het tabblad "Opl. Status" in cel H1016 het aantal oranje gekleurde cellen tellen in het bereik (H13:H1013) van dat tabblad.

Bovenstaande geldt overigens ook voor de overige cellen (I1015:CZ1015) en (I1016:CZ1016) met hun overeenkomstige kolommen.
Maar daar kom ik denk ik wel uit als ik de oplossing voor Cel H1015 en H1016 heb.

Volgens mij komt de formule van E v R https://www.helpmij.nl/forum/showthread.php/916949-Celkleur-tellen-met-voorwaardelijke-opmaak?highlight=gekleurde+cellen+tellen gegeven op 08 mei 2017 het dichtst bij de oplossing van mijn situatie maar ik krijg het niet voor elkaar de formule goed te krijgen. Ik krijg telkens of #Naam of #Waarde of 0 als gegeven terug.

Hopelijk kan iemand mij verder helpen.

Met vriendelijke groet,

Rob

Bekijk bijlage Kopie Scholingstabel.xlsm

Hieronder de oplossing via VBA, lees de thread voor alle info
Code:
Sub tst()
Dim sv, i As Long, j As Long, blauw As Long, oranje As Long
sv = Sheets("Opl. status").Range("A1:CZ1013")
   For j = 8 To UBound(sv, 2)
     For i = 13 To UBound(sv)
        If Cells(i, j).DisplayFormat.Interior.Color = 16764057 Then blauw = blauw + 1
        If Cells(i, j).DisplayFormat.Interior.Color = 10079487 Then oranje = oranje + 1
     Next i
       Cells(1015, j) = blauw
       Cells(1016, j) = oranje
       blauw = 0
       oranje = 0
    Next j
End Sub

Zie voor een oplossing via een formule de postings van E v R in deze Thread.

Code:
=SOM((TRANSPONEREN($F$13:$F$1013)='Opl. Matrix'!$F$13:$F$67)*('Opl. Matrix'!H$13:H$67="x"))
 
Laatst bewerkt:
De sommen staan voorlopig in cellen E6 en E10, Ik vind dat het niet nodig met kleuren te werken aangezien die toch afkomstig zijn van voorwaardelijke opmaak.
knop F geeft de som van alle F_en , knop X van alle X-en
 

Bijlagen

  • Kopie Scholingstabel (1).xlsm
    640,5 KB · Weergaven: 37
Blijkbaar had ik de vraag niet zo goed begrepen, hier een versie die met een formule werkt
 

Bijlagen

  • Kopie Scholingstabel (1) (4).xlsm
    641,8 KB · Weergaven: 35
Beste EmielDS,

Bedankt voor je reactie.
Helaas is dit niet wat ik zoek.
In jouw oplossing kijk je naar het aantal "X' en "F" waarden per kolom op het tabblad "Opl. Matrix".

Ik heb echter het aantal gekleurde cellen (blauw en oranje) per kolom nodig op het tabblad "Opl. Status"

Via VO wordt er wel gekeken naar het tabblad "Opl. Matrix" en op basis daarvan kleurt een cel blauw of oranje op het tabblad "Opl. Status"
De oplossing is helaas iets ingewikkelder, althans voor mij.
Hoop dat je nog andere mogelijkheden hebt maar nogmaals bedankt voor de genomen moeite.

Met vriendelijke groet,

Rob
 
Laatst bewerkt:
Heb je naar de 2° oplossing gekeken? Daar staan ze op hun plaats.
Ik vind op het blad status geen gekleurde cellen
 

Bijlagen

  • Kopie Scholingstabel (1) (4) (1).xlsm
    639,1 KB · Weergaven: 39
Laatst bewerkt:
Als je de kleuren hebt verkregen via VO is het toch heel simpel? Zet Aantal.als/Aantallen.als om de formule die je daarvoor gebruikt hebt...
 
Hoi EmielDS,

Ik heb jouw 2e oplossing gezien.
In jouw oplossing kijk je naar het aantal "X' en "F" waarden per kolom op het tabblad "Opl. Matrix".

Ik heb echter het aantal gekleurde cellen (blauw en oranje) per kolom nodig op het tabblad "Opl. Status" nodig.

Dat er nu op het tabblad "Opl. Status" geen kleuren worden geteld komt omdat de kleuring van de cellen op het tabblad 'Opl. Status" tot stand komt via VO en daar zit nu precies mijn probleem.
Visueel zijn de kleuren wel zichtbaar maar wanneer ik ze middels een formule wil laten tellen ziet de formule alleen kleurloze cellen en geeft een 0 waarde weer.

Ik zoek dus een manier om het tabblad "Opl. Status"de cellen met een door VO blauw of oranje gekleurde achtergrond te tellen.

Elke oplosing is wat mij betreft welkom of het nu VBA of een formule is.
De formule van E v R https://www.helpmij.nl/forum/showthr...+cellen+tellen gegeven op 08 mei 2017 komt dicht bij de oplossing van mijn situatie maar ik krijg het niet voor elkaar de formule goed te krijgen.
Wellicht dat jij er wel iets mee kunt.

Met vriendelijke groet,

Rob
 
Goedemorgen KristiaanL,

Dat heb ik geprobeerd maar ik krijg het niet voor elkaar om Aantal.als/Aantallen.als goed om de gebruikte formule in VO te zetten.

Code:
=AANTAL.ALS(H13:H1013;INDEX('Opl. Matrix'!H$2:$CZ$112;VERGELIJKEN($F13;'Opl. Matrix'!$F$2:$F$112;0);VERGELIJKEN(H$2;'Opl. Matrix'!H$2:H$112;0))="X")

en dat geldt ook voor

Code:
=AANTALLEN.ALS(H13:H1013;INDEX('Opl. Matrix'!H$2:$CZ$112;VERGELIJKEN($F13;'Opl. Matrix'!$F$2:$F$112;0);VERGELIJKEN(H$2;'Opl. Matrix'!H$2:H$112;0))="X")

Waarschijnlijk zit er een fout in de formule want deze formule resulteert bij mij in een 0 waarde.
Wellicht weet jij wat ik fout doe. Bovenstaande formules heb ik in cel H1015 en H1016 gebruikt op het tabblad "Opl. Status"
Overigens heb ik bovenstaande formules zowel als gewone formule als wel als matrix formule geprobeerd maar beiden met hetzelfde resultaat : een 0 waarde

Met vriendelijke groet,

Rob
 
Laatst bewerkt:
Alvast een macrootje:

middels displayformat

Code:
Sub tst()
Dim cel As Range, i As Long, j As Long
    For Each cel In Sheets("Opl. Status").Range("H13:BS1013")
        If cel.DisplayFormat.Interior.Color = 16764057 Then i = i + 1
        If cel.DisplayFormat.Interior.Color = 10079487 Then j = j + 1
    Next
MsgBox "Blauwe cellen:" & i
MsgBox "Oranje cellen:" & j
End Sub

Middels formule wordt wat lastiger denk ik vanwege dubbelingen, maar alles kan in Excel.....
 
E v R,

Bedankt voor de code.
Het telt inderdaad het aantal cellen met een blauwe en oranje kleur.
Dit is inderdaad wat ik zocht maar net niet helemaal.
Ik zoek namelijk het aantal blauwe en oranje cellen per kolom.
Ik heb de code in een module gezet en een sub gemaakt op het tabblad "opl. Status"
Code:
Private Sub Worksheet_Activate()
tst
End Sub
Ik heb de regel code ook even gewijzigd in
Code:
For Each cel In Sheets("Opl. Status").Range("H13:H1013")
en dan krijg ik inderdaad het juiste aantal blauwe en oranje cellen in kolom H
Nu wordt dat nog zichtbaar in een Msg box maar hoe kan ik de blauwe aantallen per kolom zichtbaar maken op regel 1015 en het aantal oranje op rij 1016.
Ik snap dat enig zelf uitzoeken wenselijk/noodzakelijk is maar ik heb helaas te weinig kaas gegeten van VBA dus dat gaat mijzelf niet lukken.
Hoe dan ook, bedankt zover voor de genomen moeite.

Met vriendelijke groet,

Rob
 
maak van
Code:
MsgBox "Blauwe cellen:" & i
MsgBox "Oranje cellen:" & j
eens
Code:
[H1015]= i 'blauw
[H1016]= j 'oranje
 
E v R,

Ik heb de code aangepast en nu zie ik het resultaat in Cell H1015 en H1016.
Sub tst()
Code:
Dim cel As Range, i As Long, j As Long
    For Each cel In Sheets("Opl. Status").Range("H13:H1013")
        If cel.DisplayFormat.Interior.Color = 16764057 Then i = i + 1
        If cel.DisplayFormat.Interior.Color = 10079487 Then j = j + 1
    Next
Range("H1015") = i
Range("H1016") = j
End Sub
Hoe zorg ik ervoor dat dit op regel 1015 en 1016 zichtbaar wordt voor alle kolommen?

Rob
 
Haije,

Bedankt! zie net jou reactie.
Ben blij te zien dat we tot dezelfde oplossing zijn gekomen. Bevestigt voor mij dat ik op de goede weg ben.
Blijft alleen mijn vraag:

Hoe zorg ik ervoor dat dit op regel 1015 en 1016 zichtbaar wordt voor alle kolommen?

Nog open.
 
Laatst bewerkt:
Mijn versie staat het tellen van VO niet toe, maar ik zie ook helemaal geen blauwe en oranje cellen in Opl. Status.

Met een UDF zal het er ongeveer zo uit zien.

Code:
function tel(r as range,kleur as long)as long
dim cel as range
    For Each cel In r
        If cel.DisplayFormat.Interior.Color = kleur then tel = tel + 1
    Next
End function

In cel H1015 zet je de formule:
Code:
=tel(H13:H1013;16764057)
 
HSV,

Bedankt voor jouw oplossing maar wellicht doe ik iets fout.

Ik zie dat wanneer ik het tabblad op "Automatisch berekenen" heb staan ik in cel H1015 als resultaat #WAARDE! heb staan.
Zet ik het tabblad op "Handmatig berekenen" dan werkt het wel maar dat betekent dat ik voor iedere cel afzonderlijk moet gaan berekenen.
Dat laatste wordt wel heel erg onhandig.
Doe ik iets fout?
Of is dit wat je bedoelde met "Mijn versie staat het tellen van VO niet toe"

Rob
 
Probeer het zo maar eens weer.
Code:
function tel(r as range,kleur as long)as long
dim cel as range
[COLOR=#ff0000]application.volatile[/COLOR]

    For Each cel In r
        If cel.DisplayFormat.Interior.Color = kleur then tel = tel + 1
    Next
End function
 
HSV,

Code:
function tel(r as range,kleur as long)as long
dim cel as range
application.volatile

    For Each cel In r
        If cel.DisplayFormat.Interior.Color = kleur then tel = tel + 1
    Next
End function
Heeft hetzelfde effect als eerder genoemd.
Ik moet nog steeds handmatig berekenen.

Rob
 
Heb je de code wel in een standaard module geplaatst?
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan