POJASNITBA OKO RAZPONA U PLOČICAMA
(vriednost 1 je zadana određenim razponom, ter ako vriednost 2 ulazi u taj razpon, tada joj pridružujemo vriednost 1)
IZRAZ:
=IF((MATCH(LARGE($A$1:$A$6;COUNTIF($A$1:$A$6;">"&F1)+1);$A$1:$A$6)=MATCH(SMALL($B$1:$B$6;COUNTIF($B$1:$B$6;"<"&F1)+1);$B$1:$B$6));INDEX($C$1:$C$6;MATCH(SMALL($B$1:$B$6;COUNTIF($B$1:$B$6;"<"&F1)+1);$B$1:$B$6)))
Primjer razpona sam stavio crveno, ter se u ovom slučaju razponi ne smiju međusobno preklapati (ali predpostavlja se da i imamo jedinstvene razpone bez međusobnog preklapanja).
U ovom izrazu, ovisno o broju redaka, za određen razpon umjesto broj redka 6 ($A$1:$A$6 $B$1:$B$6 $C$1:$C$6), stavi broj zadnjeg redka razpona kako je kod tebe, jer u ovom primjeru imam samo 6 redaka razpona.
POJASNITBA POJEDINIH NAREDBI:
- COUNTIF($B$1:$B$6;"<"&F1)+1 - ova naredba u stupcu $B$1:$B$6 broji sve stanice koje imaju manju vriednost od stanice F1
- S naredbom SMALL($B$1:$B$6;COUNTIF($B$1:$B$6;"<"&F1)+1) tražimo n-tu najmanju vriednost u stupcu razpona, a taj n nam daje naredba countif. Na taj način dobijemo najveći broj iz stupca, a koji je manji od zadane vriednosti za koju tražimo razpon.
- Naredba LARGE, radi obrnuto od SMALL. Ona će pomoću naredbe COUNTIF naći najamnju vriednost iz stupca razpona, a koja je veća od zadane vriednosti.
- MATCH, izbacuje redni broj nađene vriednosti u stupcu razpona, a onda taj redni broj pomoću naredbe INDEX izkoristimo za dobivanje pripadne vriednosti zadanom razponu.
- IF sam stavio kano uvjet da redni broj stupaca s razponima (MIN dio razpona i MAX dio razpona) moraju biti isti.
2. NAČIN PREKO IZRAZA S NIZOVIMA:
=INDEX($C$1:$C$6;MATCH(1;($A$1:$A$6<=F1)*($B$1:$B$6>=F1);0))
Ključna je ova srednja naredba MATCH. Kada napišemo $A$1:$A$6<=F1 to će nam dati array (niz) TRUE/FALSE vrijednosti ovisno o tome jel pojedina stanica manja od 7.81:
TRUE
TRUE
FALSE
FALSE
FALSE
FALSE
Istu stvar radimo sa B stupcem, ali sad gledamo jel vriednost stanice veća od 7.81 pa dobijemo:
FALSE
TRUE
TRUE
TRUE
TRUE
TRUE
Sad ta dva arraya (niza) pomnožimo ($A$1:$A$6<=F1)*($B$1:$B$6>=F1) da saznamo na kojem indexu je vrijednost TRUE u oba niza, pak dobijemo:
0
1
0
0
0
0
To je konačni array (niz) na kojem MATCH radi, dakle moramo pronaći gdje je u tom arrayu vriednost 1, kad to saznamo dobili smo index (red) koji nam odgovara i onda pomoću index (rednog) izraza tražimo vriednost na tom indexu (redu) u stupcu C.
Usput, za ove array (nizovne) izraze navodno treba pritisnuti ctrl+shift+enter kad je potvrđuješ nakon što je upišeš, ali u novijim excelima rade bez toga, kao i obični izrazi.
Izvor:
https://hercegbosna.org/forum/internet-racunala/kakvi-ste-s-ms-excelom-t18196.html?start=25