Telefonszámunk: 1-472-0679

Minimum érték a nullák kihagyásával

2016-09-27 - horvimi - Kategória: Képletek
Hivatkozott Excel verzio: Excel 2007 Excel 2010 Excel 2013 Excel 2016

Nemrég egy feladat során szükség volt arra, hogy a legkisebb nullától eltérő számot keressem meg egy tartományban. Utánajártam a dolognak. Kiderült, hogy többféleképpen is megoldható, íme a lehetőségek. A tartomány, ahol a legkisebb nem nullát keressük, a példákban az A1:A10 tartományban van.

Tömbképlet nélküli megoldások

A kedvencem. KICSI és DARABTELI ( SMALL és COUNTIF) függvényekkel

=KICSI(A1:A10;DARABTELI($A$1:$A$10;0)+1)

=SMALL(A1:A10,COUNTIF($A$1:$A$10,0)+1)

A KICSI (SMALL) függvény megadja az N-dik legkisebb számot egy tartományban. Első argumentuma a tartomány, második pedig, hogy hányadik legkisebbet szeretném. Ha N=1, akkkor a legkisebbet, azaz a minimumot adja vissza.

Ha vannak nullák a tartományban, akkor nyilván ők lesznek a legkisebbek. Ha egy nulla van, akkor a nullán kívüli legkisebb szám a második legkisebb lesz. Ha négy nullám van, akkor az ötödik legkisebbet keresem, stb…Tehát az annyiadik legkisebbet keresem, ahány nulla van, plusz egy.

A fenti képletben a tartomány adott, a DARABTELI/COUNTIF függvénnyel pedig megszámoljuk a nullák számát, és hozzáadunk egyet. Az ennyiedik legkisebbet keressük.

Adatbázis függvénnyel

Ehhez az adat tartományon kívül szükség van egy feltétel tartományra is. Ezt a példában a C oszlopba tettem

=AB.MIN(A1:A10;1;C1:C2)

Minimum nullák nélkül

Tömbképletek

MIN és HA függvénnyel

=MIN(HA(A1:A10 <>0;A1:A10))

Itt a belső HA függvény a nullák kizárásával létrehoz egy tömböt, aminek a minimumát keressük.

A képletet CTRL+SHIFT+ENTER-el kell lezárni, mert tömbképet.

KICSI / SMALL és HA függvénnyel

=KICSI(HA(A1:A10<>0;A1:A10);1)

A nullák nélküli tömb első legkisebb elemét, azaz a minimumát adja vissza

Ez szintén tömbképlet, azaz CTRL+SHIFT+ENTER

  • Lássuk élőben!

 

1 Comment
  1. Ha van benne negatív érték is, akkor:

    =KICSI(A1:A10;DARABTELI($A$1:$A$10;”<=0")+1)

Vélemény, hozzászólás?