MENU
 
Home
Nieuwsbrief
GC in de media
SiteMap
 
 
Tips en Tricks
Excel
Word
Photoshop
PowerPoint
Surf Tips
Gmail
Android
iPad
Excel ClipTips
 
cursus Office 2016
Access
Excel
Outlook
PowerPoint
Word
 
cursus Office 2013
Excel
PowerPoint
Word
Nieuw in Excel 2013
Nieuw in Word 2013
Nieuw in PowerPoint 2013
 
cursus Office 2010
Access
Nieuw in Excel 2010
Excel automatiseren
Excel
OneNote
Outlook
PowerPoint
Word
 
cursus Office 2007
Access
Excel
Outlook
PowerPoint
Publisher
Visio
Word
 
cursus Office
2000-2002-2003-XP
Access
Excel
PowerPoint
Outlook
Word
 
cursus Photoshop
CC -3D
Animatie
CS6
CS5
CS4
CS2 - CS3
Lightroom 3
Elements 6
Mask Pro
Nik Collection
 
cursus Dreamweaver
CS3
 
cursus Illustrator
CS4
 
cursus Flash
CS4
 
cursus Fireworks
CS4
 
cursus Paint Shop Pro
X en X2
 
cursus Premiere
Elements 7-8
 
cursus Joomla
Joomla 1.5
 
Sociale Netwerk sites
Facebook
LinkedIn
Twitter
 
iPad
Apps
 
Diversen
Celtx
CSS
DropBox
Firefox 3.6
GIMP
Internet Explorer 9
LIME
Linux
OpenSUZE
PREZI
ProShow Producer
YouTube
 
cursus Google
Agenda
Analytics
Gmail
Zoeken
Picasa 3
SketchUp
Chrome
Street View
 
cursus Windows
Live Movie Maker
Windows 10
Windows 8
Windows 7
XP
Vista
 
cursus Office '97
Word
Excel
 
 

 

Tips Excel   go to : Index
       
Tip 75    
Deze Tip werd geschreven door Valentin, waarvoor mijn dank.
 
Gegevens filteren d.m.v. formule
Op vraag van Rudy De Grauwe heb ik de volgende tip geschreven.
Het voorbeeldbestand kan je hier downloaden.
 
Rudy wil een boodschappenlijst samenstellen door items aan te vinken(1), en deze items als een aaneengesloten reeks weergeven in een ander kolom(2).
 

Als we kijken naar onderstaand voorbeeld moeten  de cellen in kolom B filteren op het criteria WAAR en de corresponderende rij van kolom C tonen op een andere locatie.
We gaan in deze tip filteren door gebruik te maken van een formule.

We brengen eerst de selectievakjes aan in kolom A en koppelen deze aan de cellen van kolom B, Zie Excel tip 022 .

 

We typen in cel E2 de formule:
=ALS(RIJEN(E$2:E2)>AANTAL.ALS($B$2:$B$25;WAAR);"";INDEX($C$2:$C$25;
KLEINSTE(ALS($B$2:$B$25=WAAR;RIJ($B$2:$B$25)-RIJ($B$2)+1);RIJEN($B$2:B2))))

En drukken CTRL+SHIFT+ENTER

De formule verandert nu in een matrixformule:

{=ALS(RIJEN(E$2:E2)>AANTAL.ALS($B$2:$B$25;WAAR);"";INDEX($C$2:$C$25;
KLEINSTE(ALS($B$2:$B$25=WAAR;RIJ($B$2:$B$25)-RIJ($B$2)+1);RIJEN($B$2:B2))))}

 
We kopiëren de formule naar beneden tot en met cel E25
 
Het eerste gedeelte van de formule:
=ALS(RIJEN(E$2:E2)>AANTAL.ALS($B$2:$B$25;WAAR);"";
ALS het aantal RIJEN van het celgebied E2 tot en met E2 (=1 ) groter is dan het AANTAL keer dat de waarde WAAR voorkomt (in ons voorbeeld is dit 3) in het celgebied B2 tot en met B25 geef dan niets
 
De functie ALS geeft een waarde weer wanneer aan een voorwaarde wordt voldaan, en een andere waarde wanneer aan deze voorwaarde niet wordt voldaan.
De functie RIJEN geeft als resultaat het aantal rijen in een verwijzing.
De functie AANTAL.ALS telt het aantal cellen in een bereik dat voldoet aan een enkel criterium.
 
Wanneer we één of meerdere vakjes in kolom A aanvinken (maakt niet uit welk) dan is het aantal rijen van het celgebied E2 tot en met E2 ( =1 ) kleiner of gelijk aan het aantal keer dat de waarde WAAR voorkomt
( =>1 )in het celgebied B2 tot en met B25 en wordt dus niet aan de ALS voorwaarde voldaan en komt het tweede gedeelte van de formule in aanmerking,
 
INDEX($C$2:$C$25;KLEINSTE(ALS($B$2:$B$25=WAAR;RIJ($B$2:$B$25)-RIJ($B$2)+1);RIJEN($B$2:B2)
De functie =INDEX geeft als resultaat een waarde of de verwijzing naar een waarde vanuit een tabel of bereik.
 

De syntaxis van de functie INDEX heeft de volgende parameter:
INDEX(matrix, rij_getal, [kolom_getal]).

 

Parameter :1 Matrix   =vereist. Een cellenbereik of een matrixconstante.

 

Als matrix slechts één rij of kolom bevat, is het bijbehorende argument rij_getal of kolom_getal optioneel.

Als matrix meerdere rijen en kolommen bevat en alleen rij_getal of kolom_getal wordt gebruikt, geeft INDEX als resultaat een matrix van de gehele rij of kolom in matrix.

 

Parameter 2: rij_getal   =vereist. Selecteert de rij in matrix waaruit een waarde moet worden opgehaald. Als u rij_getal weglaat, is kolom_getal een verplicht argument.

 

Parameter 3: kolom_getal   =optioneel. Selecteert de kolom in matrix waaruit een waarde moet worden opgehaald. Als u kolom_getal weglaat, is rij_getal een verplicht argument.

 
INDEX($C$2:$C$25;= het cellenbereik waaruit we de gegevens moeten ophalen.
voor de tweede parameter van index, rij getal gebruiken we de formule:
KLEINSTE(ALS($B$2:$B$25=WAAR;RIJ($B$2:$B$25)-RIJ($B$2)+1);RIJEN($B$2:B2)
De functie =KLEINSTE bepaalt de op k-1 na kleinste waarde in een gegevensbereik. Gebruik deze functie om waarden met een bepaalde relatieve positie in een gegevensverzameling op te halen.
 

De functie =KLEINSTE heeft 2 parameters

 

Parameter 1:matrix  =vereist. Een matrix of een bereik met numerieke gegevens waarin u de op k-1 na kleinste waarde wilt bepalen.

 

Parameter 2: k  =vereist. De positie (geteld vanaf de kleinste waarde) in de matrix of het cellenbereik met gegevens.

 
Ook hier moeten we net zoals beschreven in Excel tip 068 deel 2 een numerieke waarde toekennen aan de cellen B2 tot en met B25 die de waarde WAAR bevatten.
 
Wanneer we bv. een vinkje plaatsen bij bloem, melk en olie en we bekijken voor cel E2 de parameter matrix van de functie KLEINSTE, dus het gedeelte ALS($B$2:$B$25=WAAR;RIJ($B$2:$B$25)RIJ($B$2)+1)
 
Dan geeft dit als resultaat:
ONWAAR;2;ONWAAR;4;ONWAAR;6;ONWAAR;ONWAAR;ONWAAR;ONWAAR;ONWAAR;
ONWAAR;ONWAAR;ONWAAR;ONWAAR;ONWAAR;ONWAAR;ONWAAR;
ONWAAR;ONWAAR;ONWAAR;ONWAAR;ONWAAR;ONWAAR}
 
De parameter K van de functie KLEINSTE geeft dan als resultaat: 1
 

Dus voor cel E2 nemen we uit de index C2 tot en met C25 de 1stekleinste waarde(=2)  = cel C3, voor cel E3 nemen we uit de index C2 tot en met C25 de 2de kleinste waarde(=4)  = cel C5, voor cel E4 nemen we uit de index C2 tot en met C25 de 3de kleinste waarde (=6) = cel C7.

 
Tip: maak het werkblad visueel aantrekkelijker door kolom B te verbergen: Cursus Excel 2007 Les 16 , selecteer de cellen E1 tot en met E25 en definieer een afdrukgebied: Cursus Excel 2007 Les 80.
 
Ter informatie: GratisCursus.be denkt aan zijn cursisten, denk ook aan GratisCursus.be
 
 
Heb je vragen betreffende deze tip, mail me Valentin
 
Index
 

All courses now available in English:
www.swotster.com

copyright © 2012 - Swotster Ltd - Hong Kong - China