Příspěvky uživatele


< návrat zpět

elninoslov napsal/a:

Obe verzie prerobené tak, že je jedno, či je to číslo alebo textočíslo. Každopádne to musí byť prevediteľné na číslo.
Ale ja by som si to určo previedol na čísla. Na to môžu nadväzovať ďalšie problémy ako filtre (časté aj pri dátum vs. textodátum) a pod. Jednorázové prevádzanie sa robí tak, že si niekde do bunky dočasne napíšete 1, tú bunku dáte Ctrl+C, označíte textočísla, pravý klik, Prilepiť špeciálne, Hodnoty a Násobenie, bunku s 1 zmažete. Ak to je často menené, napr. nejaký import, tak priamo v importe by to malo ísť, alebo pomocným stĺpcom so vzorcami ako to máte teraz. A možnosť je samozrejme aj takýto upravený vzorec čo Vám sem teraz dávam, ktorému je to jedno :)


Funguje to skvele. Díky za tvoj čas a inštrukcie!

elninoslov napsal/a:

A Vám nevadí, že Vám Excel jasne hovorí (zelený trojuholník), že tie "0" nie sú 0? Veď to tam jasne píše, že máte tie "čísla" uložené ako text. Použite normálne čísla a ten kratší vzorec. O tom, že to musí byť číslo, som písal aj ja.

EDIT:
A u dlhšieho vzorca je problém okrem textočísel aj v tom, že neviete ako funguje, a nesprávne ste ho upravil. Tučným som zvýraznil Vaše chyby. To A1 je tam na získanie číselného radu (indexu) začínajúceho 1 a končiaceho počtom <>0, to A1 bude vždy A1 bezohľadu akú oblasť chcete skúmať. A to -2 tam musíte dať z rovnakého dôvodu, aby ste získali číselný rad podľa počtu skúmaných buniek ale tiež začínajúcim od 1. Preto ak ste na riadku V3 tak -2.
=INDEX(V3:V45;INDEX(SMALL(IF(V3:V45<>0;ROW(V3:V45)-2;FALSE);ROW(OFFSET(A1;;;COUNTIF(V3:V45;"<>"&0))));RANDBETWEEN(1;COUNTIF(V3:V45;"<>"&0))))
=INDEX(V3:V45;INDEX(SMALL(KDYŽ(V3:V45<>0;ŘÁDEK(V3:V45)-2;NEPRAVDA);ŘÁDEK(POSUN(A1;;;COUNTIF(V3:V45;"<>"&0))));RANDBETWEEN(1;COUNTIF(V3:V45;"<>"&0))))


Díky. Nechcel som ťa rozčúliť, stále sa učím 5
Bohužiaľ aby som z pôvodného stĺpca spravil číslo tak som to zatiaľ dokázal spraviť len tým, že som to do nového stĺpca prenásobil *1 a vzorec upravil tak aby sa týkal tohto stĺpca. Následne to funguje s INDEXovou funkciou :) Díky

lubo napsal/a:

Pokud máte novější verzi excelu, pak
=LET(tab;FILTER($A$1:$A$6;$A$1:$A$6<>0);INDEX(tab;RANDBETWEEN(1;POČET(tab))))


Díky skúšal som aj na tablete kde mám nový office 365 a hádzalo mi tam aj 0. Nevedel som nájsť kde robím chybu.

elninoslov napsal/a:

Jednoduchší vzorec ma zatiaľ nenapadol, tak snáď niekto iný:
(maticový vzorec Ctrl+Shift+Enter)
=INDEX(A1:A6;INDEX(SMALL(IF(A1:A6<>0;ROW(A1:A6);FALSE);ROW(OFFSET(A1;;;COUNTIF(A1:A6;"<>"&0))));RANDBETWEEN(1;COUNTIF(A1:A6;"<>"&0))))
=INDEX(A1:A6;INDEX(SMALL(KDYŽ(A1:A6<>0;ŘÁDEK(A1:A6);NEPRAVDA);ŘÁDEK(POSUN(A1;;;COUNTIF(A1:A6;"<>"&0))));RANDBETWEEN(1;COUNTIF(A1:A6;"<>"&0))))

kratší variant, ale musia to byť čísla
=SMALL(IF(A1:A6<>0;A1:A6;FALSE);RANDBETWEEN(1;COUNTIF(A1:A6;"<>"&0)))
=SMALL(KDYŽ(A1:A6<>0;A1:A6;NEPRAVDA);RANDBETWEEN(1;COUNTIF(A1:A6;"<>"&0)))


Ahoj díky.
Testoval som (príloha). V prvom vzorci mi tam hádže aj 0. Ten druhý funguje ale pri refreshi vzorca mi vyhodí niekedy chybu #ČÍSLO! (OFFICE 2019). Nevieš mi prosím pomôcť, kde robím chybu?

Je to presne tak. Díky!

Ahoj.
v mojom liste kde mám v jednom stĺpci dátum mi z neznámeho dôvodu začalo pri usporiadaní od najstaršieho po najnovšie zahŕňať do usporiadania aj hornú lištu kde mám názvy buniek a filtre. Neviete čím to môže byť? Ďakujem

Ďakujem za odpoveď. Samozrejme chyba bola presne v maticovom vzorci.

Inak keď rozbalím funkciu tak mi píše správny výsledok ale v bunke aj tak zadá len najvyššiu hodnotu

Ahoj. Ďakujem za pomoc pohol som sa aspoň trochu dopredu. Len mám predstavu že to bude vypadať približne ako posielam v prílohe. Čiže v každom riadku aby k danému klientovi bola najvyššia hodnota. Len v mojom vzorci mi vždy vybere iba hodnotu najvyššiu. Kde robím chybu. Ďakujem ešte raz


Uživatelské menu

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

Menu

On-line nástroje

Formulář Faktura

Formulář Faktura IV

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

Aktivní diskuse