Uslovna agregacija podataka

Združivanje (agregacija) podataka predstavlja matematičku operaciju (sumu, uprosečavanje, prebrajanje) koju obavljamo nad nizom podataka. Uslovno združivanje, kao što mu ime kaže, predstavlja združivanje podataka ukoliko je ispunjen neki uslov, a upotrebom ovih matematičkih funkcija olakšava se pravljenje sumarnih izveštaja. U ovom tekstu biće reč o jednouslovnom združivanju podataka.

Priču ćemo započeti jednom često korišćenom funkcijom, a to je funkcija SUMIF. Ovako izgleda njena sintaksa:

SUMIF (<opseg>, <kriterijum>,<opseg za sumiranje>)

Prvi argument ove funkcije je opseg 00054-1ćelija. Opseg je skup ćelija u nekoj koloni tabele, cela kolona ili imenovani niz koji predstavlja kolonu. Kriterijum predstavlja kriterijum sa kojim se porede ćelije prethodno definisanog opsega. To može biti neka vrednost (tekst pod znacima navoda, broj, datum, logička vrednost) ili uslov naveden pod znacima navoda. Opseg za sumiranje predstavlja ćelije čije vrednosti sabiramo ako je ispunjen zadati uslov. U nizu primera koji slede objasnićemo na koji način je sve moguće iskoristiti ovu funkciju.

Za tabelu zadatu na slici probaćemo da sumiramo sve one vrednosti prodaje koje su se odigrale u Beogradu. Nakon što unesemo znak jednakosti i odaberemo funkciju SUMIF, kao prvi argument unosimo opseg B2:B7, koji predstavlja sve one ćelije u kojima se u tabeli nalaze nazivi gradova. Zatim, unosimo uslov, a to je naziv grada Beograda pod znacima navoda. Na kraju, biramo kolonu u kojoj se nalaze vrednosti prodaje.

=SUMIF(B2:B7,“BEOGRAD“,C2:C7)

Nakon što smo uneli funkciju, dobićemo sumu svih onih podataka koji zadovoljavaju uslov da je prodaja izvršena u Beogradu.

Kada unosimo tekst možemo da koristimo i „džoker“ znakove „zvezdicu“ (*) i „upitnik“(?). Zvezdica menja više znakova u navedenom tekstu, a upitnik samo jedan znak. Na primer:

=SUMIF(B2:B7,“B*“,C2:C7)

računa sumu vrednosti za sve gradove u tabeli čiji naziv počinje slovom „B“. Ili:

=SUMIF(B2:B7,“B?OGRAD“,C2:C7)

računa sumu vrednosti za sve gradove u tabeli čiji naziv počinje slovom „B“, nastavlja se bili kojim drugim slovom, a završava se nizom slova „OGRAD“.

Ako vršimo sumiranje podataka u poređenju sa nekom brojnom vrednošću, uslov možemo da navedemo pod znacima navoda. Na primer, ako želimo da sumiramo sve vrednosti u koloni C koje su veće od 100.000, iskoristićemo formulu:

=SUMIF(C2:C7,“>100000″,C2:C7)

Kao što vidite, u nekim slučajevima moguće je da kao argument navedemo dva istovetna opsega. U konkretnom primeru, ograničili smo ispitivanje uslova i sumiranje na opseg C2:C7. Kao argument mogli smo da navedemo i celu kolonu C, a u tom slučaju bi formula izgledala ovako:

=SUMIF(C:C,“>100000″,C:C)

Pored funkcije SUMIF za uslovno združivanje se još koriste i funkcije AVERAGEIF i COUNTIF. AVERAGEIF ima istu sintaksu kao SUMIF, a razlikuje se samo po tome što ona vrši uslovno uprosečavanje niza podataka. Funkcija COUNTIF koristi se za prebrajanje elemenata niza koji zadovoljavaju određeni uslov. Njena sintaksa je:

COUNTIF (<opseg>, <kriterijum>)

Na primer, ako želimo da prebrojimo sve one ćelije u koloni B koje imaju vrednost „BEOGRAD“ uneli bi smo sledeću formulu:

=COUNTIF(B2:B7,“BEOGRAD“)

Prosečnu vrednost prodaje u Beogradu dobili bi smo pomoću sledeće formule:

=AVERAGEIF(B2:B7,“BEOGRAD“,C2:C7)

Za svaku od navedenih funkcija važe ista pravila za dodeljivanje argumenata ili formulisanje uslova koji se koristi za združivanje (sumu, uprosečavanje, prebrajanje) podataka.