Povratak / back

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








Free Web Hosting