Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  86 87 88 89 90 91 92 93 94   další » ... 289

lugr napsal/a:

... stydím ...
???
To určite nieje prečo!
Za 1. nikto nepovedal, či to čo som spravil je správne, možno je to konina, a ešte k tomu čeština vyskloňovaná od slováka, čiže bársjaká blbosť tam môže byť. A za 2. keď vynakladáte snahu, nemôžete sa za ňu hanbiť. Mňa nakopol práve ten Váš vzorec.

Snáď vyskloňované dobre 5
=CHOOSE(MID(TEXT(A1;"000000000,00");1;1)+1;;"sto";"dvěstě";"třista";"čtyřista";"pětset";"šestset";"sedmset";"osmset";"devětset")
&CHOOSE(MID(TEXT(A1;"000000000,00");2;1)+1;;CHOOSE(MID(TEXT(A1;"000000000,00");3;1)+1;"deset";"jedenáct";"dvanáct";"třináct";"čtrnáct";"patnáct";"šestnáct";"sedmnáct";"osmnáct";"devatenáct");"dvacet";"třicet";"čtyřicet";"padesát";"šedesát";"sedmdesát";"osmdesát";"devadesát")
&IF(--(MID(TEXT(A1;"000000000,00");2;1))=1;"";CHOOSE(MID(TEXT(A1;"000000000,00");3;1)+1;;IF(--(MID(TEXT(A1;"000000000,00");1;3))=1;"jeden";"jedna");"dva";"tři";"čtyři";"pět";"šest";"sedm";"osm";"devět"))
&IF(--(MID(TEXT(A1;"000000000,00");1;3))>4;"milionů";CHOOSE(--(MID(TEXT(A1;"000000000,00");1;3))+1;;"milion";"miliony";"miliony";"miliony"))

&CHOOSE(MID(TEXT(A1;"000000000,00");4;1)+1;;"sto";"dvěstě";"třista";"čtyřista";"pětset";"šestset";"sedmset";"osmset";"devětset")
&CHOOSE(MID(TEXT(A1;"000000000,00");5;1)+1;;CHOOSE(MID(TEXT(A1;"000000000,00");6;1)+1;"deset";"jedenáct";"dvanáct";"třináct";"čtrnáct";"patnáct";"šestnáct";"sedmnáct";"osmnáct";"devatenáct");"dvacet";"třicet";"čtyřicet";"padesát";"šedesát";"sedmdesát";"osmdesát";"devadesát")
&IF(--(MID(TEXT(A1;"000000000,00");5;1))=1;"";CHOOSE(MID(TEXT(A1;"000000000,00");6;1)+1;;IF(--(MID(TEXT(A1;"000000000,00");4;3))=1;"jeden";"jedna");"dva";"tři";"čtyři";"pět";"šest";"sedm";"osm";"devět"))

&IF(--(MID(TEXT(A1;"000000000,00");4;3))>4;"tisíc";CHOOSE(--(MID(TEXT(A1;"000000000,00");4;3))+1;;"tisíc";"tisíce";"tisíce";"tisíce"))
&CHOOSE(MID(TEXT(A1;"000000000,00");7;1)+1;;"sto";"dvěstě";"třista";"čtyřista";"pětset";"šestset";"sedmset";"osmset";"devětset")
&CHOOSE(MID(TEXT(A1;"000000000,00");8;1)+1;;CHOOSE(MID(TEXT(A1;"000000000,00");9;1)+1;"deset";"jedenáct";"dvanáct";"třináct";"čtrnáct";"patnáct";"šestnáct";"sedmnáct";"osmnáct";"devatenáct");"dvacet";"třicet";"čtyřicet";"padesát";"šedesát";"sedmdesát";"osmdesát";"devadesát")
&IF(--(MID(TEXT(A1;"000000000,00");8;1))=1;"";CHOOSE(MID(TEXT(A1;"000000000,00");9;1)+1;;IF(--(MID(TEXT(A1;"000000000,00");7;3))=1;"jeden";"jedna");IF(INT(A1)=2;"dvě";"dva");"tři";"čtyři";"pět";"šest";"sedm";"osm";"devět"))

&IF(INT(A1)>0;IF(INT(A1)=1;" koruna";IF(INT(A1)<5;" koruny";" korun")))

&IF(--(RIGHT(TEXT(A1;"000000000,00");2))=0;"";IF(INT(A1)>0;" a ";"")&CHOOSE(MID(TEXT(A1;"000000000,00");11;1)+1;;CHOOSE(MID(TEXT(A1;"000000000,00");12;1)+1;"deset";"jedenáct";"dvanáct";"třináct";"čtrnáct";"patnáct";"šestnáct";"sedmnáct";"osmnáct";"devatenáct");"dvacet";"třicet";"čtyřicet";"padesát";"šedesát";"sedmdesát";"osmdesát";"devadesát")
&IF(--(MID(TEXT(A1;"000000000,00");11;1))=1;"";CHOOSE(MID(TEXT(A1;"000000000,00");12;1)+1;;IF(--(RIGHT(TEXT(A1;"000000000,00");2))=1;"jeden";"jedna");"dva";"tři";"čtyři";"pět";"šest";"sedm";"osm";"devět"))

&IF(RIGHT(TEXT(A1;"000000000,00");2)+0=1;" haléř";IF(RIGHT(TEXT(A1;"000000000,00");2)+0<5;" haléře";" haléřů")))


EDIT: No dobre, tak som to aj preložil do CZ:
=ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");1;1)+1;;"sto";"dvěstě";"třista";"čtyřista";"pětset";"šestset";"sedmset";"osmset";"devětset")
&ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");2;1)+1;;ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");3;1)+1;"deset";"jedenáct";"dvanáct";"třináct";"čtrnáct";"patnáct";"šestnáct";"sedmnáct";"osmnáct";"devatenáct");"dvacet";"třicet";"čtyřicet";"padesát";"šedesát";"sedmdesát";"osmdesát";"devadesát")
&KDYŽ(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");2;1))=1;"";ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");3;1)+1;;KDYŽ(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");1;3))=1;"jeden";"jedna");"dva";"tři";"čtyři";"pět";"šest";"sedm";"osm";"devět"))
&KDYŽ(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");1;3))>4;"milionů";ZVOLIT(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");1;3))+1;;"milion";"miliony";"miliony";"miliony"))

&ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");4;1)+1;;"sto";"dvěstě";"třista";"čtyřista";"pětset";"šestset";"sedmset";"osmset";"devětset")
&ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");5;1)+1;;ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");6;1)+1;"deset";"jedenáct";"dvanáct";"třináct";"čtrnáct";"patnáct";"šestnáct";"sedmnáct";"osmnáct";"devatenáct");"dvacet";"třicet";"čtyřicet";"padesát";"šedesát";"sedmdesát";"osmdesát";"devadesát")
&KDYŽ(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");5;1))=1;"";ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");6;1)+1;;KDYŽ(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");4;3))=1;"jeden";"jedna");"dva";"tři";"čtyři";"pět";"šest";"sedm";"osm";"devět"))

&KDYŽ(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");4;3))>4;"tisíc";ZVOLIT(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");4;3))+1;;"tisíc";"tisíce";"tisíce";"tisíce"))
&ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");7;1)+1;;"sto";"dvěstě";"třista";"čtyřista";"pětset";"šestset";"sedmset";"osmset";"devětset")
&ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");8;1)+1;;ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");9;1)+1;"deset";"jedenáct";"dvanáct";"třináct";"čtrnáct";"patnáct";"šestnáct";"sedmnáct";"osmnáct";"devatenáct");"dvacet";"třicet";"čtyřicet";"padesát";"šedesát";"sedmdesát";"osmdesát";"devadesát")
&KDYŽ(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");8;1))=1;"";ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");9;1)+1;;KDYŽ(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");7;3))=1;"jeden";"jedna");KDYŽ(CELÁ.ČÁSTA1)=2;"dvě";"dva");"tři";"čtyři";"pět";"šest";"sedm";"osm";"devět"))

&KDYŽ(CELÁ.ČÁSTA1)>0;KDYŽ(CELÁ.ČÁSTA1)=1;" koruna";KDYŽ(CELÁ.ČÁSTA1)<5;" koruny";" korun")))

&KDYŽ(--(ZPRAVA(HODNOTA.NA.TEXT(A1;"000000000,00");2))=0;"";KDYŽ(CELÁ.ČÁSTA1)>0;" a ";"")&ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");11;1)+1;;ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");12;1)+1;"deset";"jedenáct";"dvanáct";"třináct";"čtrnáct";"patnáct";"šestnáct";"sedmnáct";"osmnáct";"devatenáct");"dvacet";"třicet";"čtyřicet";"padesát";"šedesát";"sedmdesát";"osmdesát";"devadesát")
&KDYŽ(--(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");11;1))=1;"";ZVOLIT(ČÁST(HODNOTA.NA.TEXT(A1;"000000000,00");12;1)+1;;KDYŽ(--(ZPRAVA(HODNOTA.NA.TEXT(A1;"000000000,00");2))=1;"jeden";"jedna");"dva";"tři";"čtyři";"pět";"šest";"sedm";"osm";"devět"))

&KDYŽ(ZPRAVA(HODNOTA.NA.TEXT(A1;"000000000,00");2)+0=1;" haléř";KDYŽ(ZPRAVA(HODNOTA.NA.TEXT(A1;"000000000,00");2)+0<5;" haléře";" haléřů")))

Pole tam nieje na odobranie duplicity, ale na hromadné načítanie a hromadný zápis hodnôt (nie bunku po bunke).

Duple odoberá kolekcia, konkrétne priradenie jedinečného kľúča v Add, v kombinácii s On Error. Funguje to tak, že záznamu v kolekcii sa okrem samotnej hodnoty priradí aj jedinečný kľúč (to isté ako hodnota). A keďže je to kľúč jedinečný, nedovolí pridať rovnakú hodnotu s rovnakým kľúčom 2x. Vznikne pri tom chyba, ktorú odchytí a spracuje On Error. Na konci sú v kolekcii iba jedinečné záznamy.

nemuselo, stačilo pridať on error, a kľúč v kolekcii, ale ja mám radšej polia :)

Pr.

???
Takže Vy nechcete nič vypisovať, žiadne slová, ale iba určiť koľko je slov, a 2x toľko buniek vyfarbiť?
Tak zmažte všetky vzorce, označte H5, a zmente PF na
=(LEN(TRIM($H5))-LEN(SUBSTITUTE(TRIM($H5);" ";""))+(LEN(TRIM($H5))>1))*2>=COLUMN()-8
=(DÉLKA(PROČISTIT($H5))-DÉLKA(DOSADIT(PROČISTIT($H5);" ";""))+(DÉLKA(PROČISTIT($H5))>1))*2>=SLOUPEC()-8

Malo by to byť ošetrené aj na dvojmedzeru medzi slovami.

Ak chcete čokoľvek iné, NEDÁVAJTE UŽ ŽIADNE SLOVNÉ POPISY, ale PRILOŽTE MANUÁLNE VYROBENÝ POŽADOVANÝ VÝSLEDOK. Nech sa nemusí tipovať, čo asi chcete.

Beriem to ako 2 frky, a oba dobré 5

Vysvetliť ??? To by bolo na dlho. Skúsim to iba krátko popísať.
Pre zjednodušenie chápania vzorcov je použitých niekoľko Definovaných názvov:

PODSKUPINA
=OFFSET(STOPS!$K$1;MATCH(DISORDER_A!$A2;STOPS!$B$2:$B$1998;0);;COUNTIF(STOPS!$B$2:$B$1998;DISORDER_A!$A2))
=POSUN(STOPS!$K$1;POZVYHLEDAT(DISORDER_A!$A2;STOPS!$B$2:$B$1998;0);;COUNTIF(STOPS!$B$2:$B$1998;DISORDER_A!$A2))
MATCH nájde pozíciu (druhý riadok má index 1), kde sa nachádza lis
COUNTIF zistí počet záznamov toho lisu
OFFSET použije tieto 2 hodnoty na nastavenie oblasti podskupiny (predpoklad je, že sú pokope zoskupené !!!)
Pri zadávaní tohto vzorca do Def. názvu je potrebné stáť na 1. výsledkovej bunke E2.

POZNAMKA
=OFFSET(PODSKUPINA;;2)
=POSUN(PODSKUPINA;;2)
Poznámka je tá istá oblasť, len posunutá o 2 vpravo

PROSTOJ
=OFFSET(PODSKUPINA;;-5)
=POSUN(PODSKUPINA;;-5)
Prostoj je opäť tá istá oblasť, len posunutá o 5 vľavo

CHYBY
=((PODSKUPINA<>"")*1)+((POZNAMKA<>"")*2)
=((PODSKUPINA<>"")*1)+((POZNAMKA<>"")*2)
Kvôli spájaniu pomlčkou " - " treba rozlíšiť 4 stavy:
-žiadna chyba ani v Podskupine, ani v Poznámke (0 nebude nič písať)
-chyba iba v Podskupine (1 nebude dávať za ňu pomlčku)
-chyba iba v Poznámke (2 nebude dávať pomlčku pred ňu)
-chyby aj v Podskupine aj v Poznámke (3 bude medzi ne dávať pomlčku)
tie spočítané príznaky (0,1,2,3) sa nakoniec použijú v CHOOSE/ZVOLIT na určenie toho, čo sa má udiať ohľadom pomlčky.

IDX_CHYBY
=IF(CHYBY>0;ROW(PODSKUPINA)-MIN(ROW(PODSKUPINA))+1)
=KDYŽ(CHYBY>0;ŘÁDEK(PODSKUPINA)-MIN(ŘÁDEK(PODSKUPINA))+1)
Keďže niektoré riadky v oblasti lisu nemusia obsahovať chybu, potrebujeme si zistiť indexy tých v oblasti, ktoré chybu majú. Takže otestujeme predošlý názov CHYBY na číslo >0 a priradíme mu vypočítaný index (teda riadok oblasti lisu mínus prvý riadok oblasti lisu [MIN slúži na určenie 1. riadku, dá sa použiť aj MATCH ako v prvom vzorci])

PORADIE_CHYBY
=SMALL(IDX_CHYBY;INT((COLUMN()-5)/3)+1)
=SMALL(IDX_CHYBY;CELÁ.ČÁST((COLUMN()-5)/3)+1)
No a tento Def. názov už iba vracia postupne od najmenšieho indexy, v ktorých sa nachádza nejaká chyba (predchádzajúci Def. názov IDX_CHYBY). Poradové číslo chyby sa mení vždy každé 3 stĺpce. Teda E,F,G = 1; H,I,J = 2; K,L,M = 3 ...

Kompletujúci vzorec je
=IFERROR(CHOOSE(INDEX(CHYBY;PORADIE_CHYBY);INDEX(PODSKUPINA;PORADIE_CHYBY);INDEX(POZNAMKA;PORADIE_CHYBY);INDEX(PODSKUPINA;PORADIE_CHYBY)&" - "&INDEX(POZNAMKA;PORADIE_CHYBY));"")
=IFERROR(ZVOLIT(INDEX(CHYBY;PORADIE_CHYBY);INDEX(PODSKUPINA;PORADIE_CHYBY);INDEX(POZNAMKA;PORADIE_CHYBY);INDEX(PODSKUPINA;PORADIE_CHYBY)&" - "&INDEX(POZNAMKA;PORADIE_CHYBY));"")
V ňom sa na základe CHYBY (viď popis) rozhoduje či sa uplatní
1 - chyba iba v Podskupine
INDEX(PODSKUPINA;PORADIE_CHYBY)2 - chyba iba v Poznámke
INDEX(POZNAMKA;PORADIE_CHYBY)3 - obe chyby
INDEX(PODSKUPINA;PORADIE_CHYBY)&" - "&INDEX(POZNAMKA;PORADIE_CHYBY)0 - stav bez chyby ošetruje IFERROR, lebo CHOOSE s parametrom 0 dá chybovú hodnotu (musí začínať od 1), a to vyrieši IFERROR.

To bez chyby sa dá urobiť aj tak, že sa k CHYBY pripočíta 1 a riešenie stavov v CHOOSE bude
1 - bez chyby
""2 - chyba iba v Podskupine
INDEX(PODSKUPINA;PORADIE_CHYBY)3 - chyba iba v Poznámke
INDEX(POZNAMKA;PORADIE_CHYBY)4 - obe chyby
INDEX(PODSKUPINA;PORADIE_CHYBY)&" - "&INDEX(POZNAMKA;PORADIE_CHYBY)

Načítanie času je jednoduché, podľa rovnakého princípu indexu chyby

Čas v minutách, tu som urobil chybu, treba
=IF(F2="";"";MINUTE(F2))
=KDYŽ(F2="";"";MINUTA(F2))
opraviť napr. na toto
=IF(F2="";"";TEXT(F2;"[m]")*1)
=KDYŽ(F2="";"";HODNOTA.NA.TEXT(F2;"[m]")*1)

EDIT: Príloha v pôvodnom príspevku vymenená za novú s týmto novým počítaním minút.

2 pr.

No skúste, či to bude použiteľné...

Ak som to pochopil správne, tak sa dá použiť aj kratší vzorec:
=TRIM(MID(SUBSTITUTE($A2;" ";REPT(" ";LEN($A2)));(COLUMN(A1)-1)*LEN($A2)+1;LEN($A2)))
=PROČISTIT(ČÁST(DOSADIT($A2;" ";OPAKOVAT(" ";DÉLKA($A2)));(SLOUPEC(A1)-1)*DÉLKA($A2)+1;DÉLKA($A2)))

@simplynever1: Na pochopenie každého vzorca odporúčam použiť na karte "Vzorce" krokovanie vzorca pomocou "Vyhodnotiť vzorec". Samozrejme nie na 2000 riadkoch, ale iba na 10, aby ste videl, čo sa deje.

Chcete zoradiť podľa abecedy, alebo len zoradiť pod seba, tak ako idú ?
Toto ich dá tak ako idú:
=IFERROR(INDEX($M$3:$M$25;SMALL(IF($M$3:$M$25<>"-";ROW($M$3:$M$25)-2);ROW(M1)));"")
=IFERROR(INDEX($M$3:$M$25;SMALL(KDYŽ($M$3:$M$25<>"-";ŘÁDEK($M$3:$M$25)-2);ŘÁDEK(M1)));"")

a toto ich aj zoradí podľa abecedy (nesmú sa ale opakovať):
=IFERROR(INDEX($M$3:$M$25;MATCH(ROW(M1)-1;IF($M$3:$M$25<>"-";COUNTIFS($M$3:$M$25;"<"&$M$3:$M$25;$M$3:$M$25;"<>-"));0));"")
=IFERROR(INDEX($M$3:$M$25;POZVYHLEDAT(ŘÁDEK(M1)-1;KDYŽ($M$3:$M$25<>"-";COUNTIFS($M$3:$M$25;"<"&$M$3:$M$25;$M$3:$M$25;"<>-"));0));"")

"Jiří49" napsal/a:

...elninoslov přijde se "zázračným" maticovým vzorcem...

Beriem aj sarkazmus (?), v poho, taký vzorec sa dá spraviť tiež v poho 5 :
=IFERROR(INDEX('3167'!$S$9:$S$2000;SMALL(IF(('3167'!$H$9:$H$2000="1vlna")*('3167'!$P$9:$P$2000="SOLL")*('3167'!$R$9:$R$2000="N")*(COUNTIF($D$4:$D4;'3167'!$S$9:$S$2000)=0);ROW('3167'!$S$9:$S$2000)-8);1));"")
=IFERROR(INDEX('3167'!$S$9:$S$2000;SMALL(KDYŽ(('3167'!$H$9:$H$2000="1vlna")*('3167'!$P$9:$P$2000="SOLL")*('3167'!$R$9:$R$2000="N")*(COUNTIF($D$4:$D4;'3167'!$S$9:$S$2000)=0);ŘÁDEK('3167'!$S$9:$S$2000)-8);1));"")

No a čo skúsiť KT?


Strana:  1 ... « předchozí  86 87 88 89 90 91 92 93 94   další » ... 289

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

Tlac 2 roznych tabuliek

loksik.lubos • 17.7. 20:43

Týden v roce

Petr92 • 16.7. 15:34

Řazení podle času v kategoriích

veny • 16.7. 11:34

špatný výpočet ze zisku - příčina?

Anonym • 12.7. 22:56

špatný výpočet ze zisku - příčina?

Jakoby • 12.7. 12:35

Řazení podle času v kategoriích

Marekh • 12.7. 9:55

Porovnávací Tabulka

Jess • 8.7. 20:49