< návrat zpět

MS Excel


Téma: Posun range rss

Zaslal/a 29.10.2019 14:58

zdravím, potreboval by som pomôcť so vzorcom, ktorý keď vložím(posuniem) o jednu bunku nižšie, tak sa bude takto konštantne posúvať range?
Povedzme v Bunke I2 mám tento vzorec: =MAX(IF(($H2:$H49<=$E$1)*($H2:$H49>=$C$1)*(A2=$G2:$G49);$O2:$O49;""))
Keď ho posuniem do I3 tak aby bol range:
=MAX(IF(($H50:$H97<=$E$1)*($H50:$H97>=$C$1)*(A3=$G50:$G97);$O50:$O97;""))
A takto to pokračovalo ďalej a ďalej. Ďakujem za Vaše nápady, čas a riešenia. Pekný deň :-)

Zaslat odpověď >

Strana:  1 2   další »
#044833
elninoslov
=MAX(IF((OFFSET($H2:$H49;(ROW($I2)-2)*48)<=$E$1)*(OFFSET($H2:$H49;(ROW($I2)-2)*48)>=$C$1)*(A2=OFFSET($G2:$G49;(ROW($I2)-2)*48));OFFSET($O2:$O49;(ROW($I2)-2)*48);""))

Píšem to v teplote a z mobilu, tak snáď je to funkčné alebo aspoň pochopiteľné, ako to s tym Offsetom myslím.citovat
#044834
avatar
Myslel som si, že riešenie bude cez offset :-) píše mi však chybu, že je zadaných málo argumentov. Prajem skoré uzdravenie :-)citovat
#044835
avatar

slavek13 napsal/a:

Myslel som si, že riešenie bude cez offset :-) píše mi však chybu, že je zadaných málo argumentov. Prajem skoré uzdravenie :-)

Funkcia OFFSET má minimálne 3 parametre. Pridaj tam ;0citovat
#044837
avatar
Ak som správne upravil vzorec, tak po pridaní ;0 ...dostávam výsledok HODNOTA hneď na prvom OFFSET($H2:$H9;...) ...nejaké nápady, prečo by to tak mohlo byť? v stĺpci H mám časy - $E$1 a $C$1 určujú od-do...a v stĺpci G mám dátumy - A2 a ďalej A3,.. určuje dátum a podľa týchto kritérií dostávam hodnoty zo stĺpca O...vzorec po pridaní vypadá takto: {=MAX(IF((OFFSET($H2:$H49;(ROW($I2)-2)*48;0)<=$E$1)*(OFFSET($H2:$H49;(ROW($I2)-2)*48;0)>=$C$1)*(A2=OFFSET($G2:$G49;(ROW($I2)-2)*48;0));OFFSET($O2:$O49;(ROW($I2)-2)*48;0);""))}citovat
#044839
avatar
Nechce sa mi s tým babrať. To je tak keď nedáš prílohu.. Skús miesto
OFFSET($H2:$H49;(ROW($I2)-2)*48;0)
dať
OFFSET($H2;(ROW($I2)-2)*48;0;47)citovat
#044845
avatar
Tak som spravil ukážku, vzorce bez offset fungujú správne
Příloha: xlsx44845_range.xlsx (30kB, staženo 30x)
citovat
#044846
avatar
Vzorce som mal spravené k mojej spokojnosti: =MAX(IF(($H:$H<=$E$1)*($H:$H>=$C$1)*(A2=$G:$G);$O:$O;""))

Avšak pri 100 000 riadkoch, to začalo spomaľovať výrazne excel a stávalo sa to, že často na pár minút ani nereagoval a to sa s tým potom nedalo pracovať, preto hľadám riešenie, ktoré pri takom veľkom množstve riadkov bude umožňovať plynulý chod excelu.citovat
#044849
avatar
Aj by mi vedel niekto s tým pomôcť? Tie OFSSETY ani jeden nefunguje, vždy dostanem výsledok HODNOTA. Nejaký nápad, ako by som to mohol spraviť, aby pri 100 000 riadkoch nebol Excel vyťažený a bol plynulý? Ďakujem :-)citovat
#044850
avatar
Maticový vzorec na celé sloupce funkgují tak jak fungují, pomaleji to nejde.

Vzorcema napřímo použij maxifs:
např.:

=MAXIFS(C:C;B:B;"<="&$J$1;B:B;">="&$H$1;A:A;E2)

jinak trochu přemýšlej.

např. kont. tabulka to řeší celkem rychle.citovat
#044852
elninoslov
Áno OFFSET robí psie kusy ak mu dáte parameter vypočítavaný z ROW(), ak mu dáte priamo číslo, nieje problém. O tom som popravde netušil. Každopádne tu máte riešenie maticovým vzorcom, ale najlepšie by bolo použiť KT, mrknite na príklad. Máte tam aj tú novú fnc MAXIFS, ktorú obsahujú nové Office 365.
Příloha: xlsx44852_44845_range.xlsx (45kB, staženo 25x)
citovat

Strana:  1 2   další »

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje