Volgend probleem.
Ik heb een tabel met diverse kolommen, waarbij het aantal zichtbare regels
geteld moet worden, na het toepassen van een filter. Tot zover geen
probleem, het tellen kan met de functie SUBTOTAAL(3,bereik) dit geeft het
aantal zichtbare regels.
Nu komt het probleem;
ik moet conditioneel de zichtbare regels tellen, dus afhankelijk van de
waarde van de zichtbare cellen in een kolom moeten deze geteld worden.
Simpel voorbeeld
Kolom A Kolom B
a z
a z
a z
b z
a v
a v
b v
Als er gefilterd wordt op kolom B met als voorwaarde =z, dan zijn er vier
rijen (plus de kopregel) zichtbaar, nu wil ik weten hoeveel cellen in kolom
A een 'a' bevatten en hoeveel er een 'b' (in voorbeeld a=3 en b=1).
Dit heb ik opgelost via een VBA routine, kan dit via een werkbladfunctie en
zo ja hoe?
Pieter
=SOMPRODUCT((voorwaarde kolomA)*(voorwaarde kolom B))
Een woordje uitleg over deze functie kan je vinden bij de vorige vraag in
deze ng "som(als formule".
Ingrid
Pieter Kuyck schreef in news:ey1M9FUmCHA.1740@tkmsftngp07
Het filteren heb ik niet in de hand, dit wordt door de gebruiker gedaan.
Oftewel ik weet niet de voorwaarde van kolom B.
Toch zal het aantal zichtbare rijen geteld moeten worden waarbij in een
bepaalde kolom een bepaalde waarde staat. Hoe kan ik dit met een matrix
formule oplossen, voor zover ik het begrijp werken deze op alle regels in
een bereik en niet alleen op de zichtbare rijen.
Is er een oplossing door de voorwaarde van het filter uit te lezen en deze
te gebruiken (in een werkbladfunctie)?
Pieter
"Ingrid" <ingrid_bap...@hotmail.com> wrote in message
news:uFQ5iMUmCHA.2592@tkmsftngp02...
aantal.als(bereik;criteria)
Een andere optie is het werken met een draaitabel en het
veld waarop je de aantal wilt in het gegevensgebied
slepen. Door dit veld als aantal in te stellen krijg je
echt alles wat je hart(je) maar kan wensen en dus ook je
gebruikers
mail me anders maar een deel van het werkblad of indien
het niet groot is het werkblad dan stuur ik je een
voorbeeld ervan terug
suc 6
John Philippen
>.
>
Aantal.Als(bereik;Criteria) zal niet werken aangezien deze de gehele tabel
gebruikt en niet alleen de zichtbare regels (na het instellen van een
filter)
Begrijp ik het goed, een draaitabel wordt automatisch geupdated zodra de
gefilterde tabel - waarop de draaitabel is gebaseerd - wordt gewijzigd?
Ik heb namelijk geen controle over het instellen van een filter, dit wordt
door de gebruikers gedaan. Ook de optie van zelf de draaitabel inlaten
stellen niet wenselijk aangezien op basis van het resultaat er grafieken
getoond worden.
Nu wordt het via een VBA routine opgelost, en dit werkt goed en zonder
problemen. Alleen zodra de gebruiker de tabel gaat filteren moet de VBA
routine opnieuw gestart worden en juist deze handeling wil ik eruit halen ->
dus automatisch het resultaat opnieuw berekenen zodra de gebruiker de tabel
gaat filteren of het filter gaat wijzigen.
In eerste instantie wil ik dit via standaard werkblad functies oplossen, als
dit niet mogelijk blijkt dan is het op te lossen via VBA en het afvangen van
een SelectionChange event. Met standaard werkblad functie bedoeld dus niet
door de gebruiker het instellen van een draaitabel. Nog andere kanttekening,
momenteel wordt deze routine door een kleine 50 mensen gebruikt, vele van
hun hebben minimale excel kennis.
Dus ik zoek een uitsluitend naar een oplossing via standaard
werkbladfuncties zonder dat de gebruiker iets moet doen.
Pieter
"john philippen" <snoz...@hotmail.com> wrote in message
news:01a001c29a1c$52e7cd00$89f82ecf@TK2MSFTNGXA01...
Met werkbladfuncties kan dit denk ik enkel via een uitgebreid filter, en dan
kan je gebruik maken van dat criteria om met database-functies te werken.
Maar ik denk niet dat dit aangewezen is voor de meeste gebruikers.
Ingrid
Pieter Kuyck schreef in news:#biAQ9hmCHA.2224@tkmsftngp02
Daar was ik al bang voor, dus toch via VBA oplossen..
Pieter
"Ingrid" <ingrid_bap...@hotmail.com> wrote in message
news:asg2ln$plue5$1...@ID-164731.news.dfncis.de...
Ingrid
Pieter Kuyck schreef in news:esYrO1imCHA.2708@tkmsftngp04
dan maar VBA
Pieter
"Ingrid" <ingrid_bap...@hotmail.com> wrote in message
news:asg7id$r6bl0$1...@ID-164731.news.dfncis.de...