Iskanje datuma na osnovi največje vrednosti v matriki

Pomoč pri delu z MS Excelom
Odgovori
zvonem
Prispevkov: 95
Pridružen: Če Sep 29, 2005 10:54 pm

Iskanje datuma na osnovi največje vrednosti v matriki

Odgovor Napisal/-a zvonem »

Zdravo!
Imam matriko s podatki (6 stolpcev x 12 vrstic). Prvi stolpec vsebuje datum, ostalih pet pa določene podatke. Največjo vrednost iz teh petih stolpcev dobim s funkcijo MAX() oziroma najmnajšo s funkcijo MIN(). Kako bi za največjo (najmanjšo) vrednost dobil ustrezen datum? Podatke ne morem sortirati po naraščajočih ali padajočih vrednostih.
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

S pomočjo treh funkcij! Torej reciva, da imate podatke v celicah od B3:G14. V koloni C so datumi, v ostalih pa številke:
  1. Največja vrednost v C15 ==> [C15] =MAX(C3:C14)
  2. Kje se nahaja največja vrednost v C16 ==> [C16] =MATCH(C15;$C$3:$C$14;0)
  3. Kateri datum je zapisan v tej vrstici v C17 ==> [C17] =OFFSET($B$3;C16-1;0)
Ali v eni sami funkciji:

Koda: Izberi vse

=OFFSET($B$3;MATCH(MAX($C$3:$C$14);$C$3:$C$14;0)-1;0)
Pa še primer za minimalno vrednost v peti koloni:

Koda: Izberi vse

=OFFSET($B$3;MATCH(MIN($F$3:$F$14);$F$3:$F$14;0)-1;0)
lp,
Matjaž Prtenjak
Administrator
zvonem
Prispevkov: 95
Pridružen: Če Sep 29, 2005 10:54 pm

Odgovor Napisal/-a zvonem »

Hm...
Katerakoli od ponujenih funkcij (posamezna ali zadnja, skupna) mi v eni vrstici deluje. Če pa vnesem dvodimenzionalno območje (konkreten primer: c4:g15), mi funkciji MATCH in OFFSET javljata napako #N/V. Podatki niso razvrščeni po vrednostih, vmes so tudi celice brez vpisanih vrednosti ali pa je vpisana vrednost 0.
admin
Site Admin
Prispevkov: 3712
Pridružen: Sr Jul 20, 2005 10:06 pm

Odgovor Napisal/-a admin »

Aha... nisem vas pravilno razumel. Predpostavil sem da želite najdi datume za minimalne in maksimalne vrednosti znotraj posameznega stolpca in ponujena rešitev je namenjena temu.

A kakorkoli je to tudi edina prava smer rešitve. Excel namreč ne more vrniti pozicije elementa znotraj matrike, saj bi le to zahtevalo dve vrednosti (vrstica/kolona), Excelova funkcija pa lahko vrne le eno vrednost.

Rešitev je torej, da po mojem predlogu iz prvotnega odgovora najdete minimalno vrednot za vsak stolpec. Pod to minimalno vrednost stolpca poiščite ustrezen datum in nato na enak način še med vsemi minimalnimi vrednostmi vseh stolpcev poiščite še skupno minimalno vrednost in ustrezen datum - enakovredno seveda tudi za maksimalne vrednosti.

Da vam še bolj plastično razložim gornji odstavek. Predpostaviva torej, da so podatki v celicah B3:G14. S funkcijami:

Koda: Izberi vse

=MIN(C3:C14)
=MIN(D3:D14)
... 
dobite minimalne vrednosti vsakega stolpca v npr. 16-to vrstico.

V 17-to vrstico zapišite minimalni datum za vsako kolono:

Koda: Izberi vse

=OFFSET($B$3;MATCH(MIN(C$3:C$14);C$3:C$14;0)-1;0)
=OFFSET($B$3;MATCH(MIN(D$3:D$14);D$3:D$14;0)-1;0)
...
Sedaj imate v vrstici 16 minimalne vrednosti za vsak stolpec in v koloni 17 minimalne datume za vsak stolpec. In rešitev je torej datum pod skupno minimalno vrednostjo:

Koda: Izberi vse

=OFFSET(C17;0;MATCH(MIN(C16:G16);C16:G16;0)-1)
Popolnoma enakovredno tudi za MAX!
lp,
Matjaž Prtenjak
Administrator
zvonem
Prispevkov: 95
Pridružen: Če Sep 29, 2005 10:54 pm

Odgovor Napisal/-a zvonem »

Matjaž, hvala. Sedaj deluje tako kot sem želel. Poizkušal sem z vrsticami na podoben način, vendar nisem vedel kako opredeliti funkcijo OFFSET.
Odgovori