Autor | Zpráva | ||
---|---|---|---|
Robbie Profil * |
#1 · Zasláno: 15. 2. 2010, 19:21:52
Tvořím tabulku s pracovními hodinami a potřeboval bych, jak přiřadit př. písmenu D - jako dovolená číslo 12 - jako 12ct hodin, tak abych do tabulky napsal D a na konci tabulky se mi počítaly hodiny. Děkuji mnohokrát
|
||
Robbie Profil * |
#2 · Zasláno: 15. 2. 2010, 20:30:57
...myslel jsem přiřazení číselné hodnoty písmenu.
|
||
Mastodont Profil |
#3 · Zasláno: 15. 2. 2010, 20:48:22
Budeš potřebovat vlastní funkci, která ty hodnoty sečte.
Function VlastniSuma(bunky As Range) Dim soucet As Date, bunka As Range For Each bunka In bunky If bunka.Value = "D" Then soucet = soucet + TimeValue("12:00:00") Else soucet = soucet + TimeValue(bunka.Text) End If Next VlastniSuma = soucet End Function |
||
_es Profil |
#4 · Zasláno: 15. 2. 2010, 22:21:55
Mastodont:
Určite sa to dá spraviť vzorcom, makra na to nie sú dobré - sú mnohonásobne pomalšie a keď sa to použije na viac buniek, tak hrozí "zasekávanie" Excelu. Robbie: Napíš nejaký vzorový riadok s bunkami, čo má byť vstup a čo výsledok. |
||
Mistr Profil |
#5 · Zasláno: 15. 2. 2010, 23:38:21
Robbie:
Než dodáš popis, o nějž Tě žádal kolega _es, navedu Tě upozorněním na excelovské funkce například KDYŽ či SVYHLEDAT nebo VVYHLEDAT. Možná je využiješ. |
||
Mastodont Profil |
#6 · Zasláno: 16. 2. 2010, 00:18:13
_es:
Kolik buněk představuje tvoje "více buněk"? |
||
_es Profil |
#7 · Zasláno: 16. 2. 2010, 04:49:09
Mastodont:
Viac buniek je vtedy, keď nastane to zasekávanie :-) Teda na horšom PC je "viac" menej. Hlavne, keď Excel niekedy preratúva aj bunky, ktorých vstupné údaje zmenené neboli, napríklad pri zapnutom automatickom filtri. Ak majú ten súbor používať ďalší, tak nastávajú ďalšie problémy s predvolene zakázanými makrami, ktoré je treba najprv povoliť. |
||
Axamith Profil |
#8 · Zasláno: 16. 2. 2010, 07:03:32
Robbie: Pokud se bude jednat o výpočty zahrnující řádově desítky, možná stovky buněk, tak bych si s tím hlavu nelámal. Kdysi jsem psal aplikaci, která obsahovala cca 750 000 vzorců a podmínek. A nebyly to krátké vzorce o několika málo proměnných. Samotný soubor pouze se vzorci ( bez dat ) měl téměř 20 MB a bylo na tom vidět zasekávání, o kterém píše _es. Je to ale řešitelné tak, že v nastavení přepneš automatické výpočty na ruční, nasypeš do tabulek data a pak to necháš celé spočítat naráz. Nemáš sice on-line výsledky okamžitě, jak měníš hodnoty v buňkách, ale neseká se při složitých a rozsáhlých výpočtech.
|
||
Mastodont Profil |
#9 · Zasláno: 16. 2. 2010, 07:21:10
_es:
Nikdy jsem žádné "zasekávání" v Excelu nezažil, a jednalo se i o tisíce řádků. Chce to ovšem dodržovat určitá pravidla, například vypínat ScreenUpdating a automatické přepočítávání, jak píše Axamith. |
||
_es Profil |
#10 · Zasláno: 16. 2. 2010, 07:51:49
Axamith, Mastodont:
Myslel som hlavne to, že aj zložitý vzorec býva obvykle oveľa rýchlejší, než jednoduchá funkcia definovaná vo VBA. A k tomu treba prirátať ďalšie nevýhody makier VBA. Takže makrami treba robiť až to, čo sa nedá cez vzorce. Ostatné veci sú dosť mimo témy. |
||
Mastodont Profil |
#11 · Zasláno: 16. 2. 2010, 08:44:25
aj zložitý vzorec býva obvykle oveľa rýchlejší
To bývá, ale podle Robbieho zadání by to chtělo nejlépe maticový vzorec a to je pro začátečníky dost náročné, proto jsem doporučil makro. |
||
robbie Profil * |
#12 · Zasláno: 17. 2. 2010, 22:00:26
vzor soubor sem dal sem: http://ulozto.cz/4020732/vzor-dokumentu.bmp
jde mi hlavně o vzorec, který přiřadí písmenu číselnou hodnotu a potom o vzorec, který v každém dni ve spodní tabulce pozná, kolikrát byla ta či ona směna použita. Duju pokud někdo nastíní nějaké řešení. . |
||
_es Profil |
#13 · Zasláno: 17. 2. 2010, 23:54:34
Nechce sa mi to celé, tak len hlavný postup, názvy sú zo slovenského Excelu, nechcelo sa mi hľadať tie české divoké názvy.
Tie jednotlivé označenia smien si daj do dvoch stĺpcov, môžeš použiť nejaké skryté stĺpce alebo riadky: X | 0| D | 12| O |10,5| atď =VLOOKUP(D5;$X$1:$Y$10;2;0) Vzorce zkopíruješ, skryješ potom riadky alebo stĺpce. Spočítaš to funkciou SUM. Tie spodné tabuľky vyrátaš cez funkciu COUNTIF. |
||
robbie Profil * |
#14 · Zasláno: 18. 2. 2010, 00:08:03
vzor soubor sem dal sem: http://ulozto.cz/4020732/vzor-dokumentu.bmp
jde mi hlavně o vzorec, který přiřadí písmenu číselnou hodnotu a potom o vzorec, který v každém dni ve spodní tabulce pozná, kolikrát byla ta či ona směna použita. Duju pokud někdo nastíní nějaké řešení. . |
||
_es Profil |
#15 · Zasláno: 18. 2. 2010, 00:23:16
robbie:
Je na tom mojom popise niečo nezrozumiteľné? Obidve veci tam máš riešené, len si musíš vyrobiť nejaké nové hodnoty v bunkách, ktoré potom skryješ. Tie české názvy funkcií si snáď nájsť vieš. |
||
robbie Profil * |
#16 · Zasláno: 18. 2. 2010, 18:18:31
...kde se dají takovéto věci naučit, předpokládám, že asi z nějaké literatury o Excelu, že? R.
|
||
robbie Profil * |
#17 · Zasláno: 18. 2. 2010, 18:19:15
..zapoměl sem poděkovat, všem, co mi napsali a poradili. Ještě jednou díky. R.
|
||
_es Profil |
#18 · Zasláno: 18. 2. 2010, 21:48:39
robbie:
„...kde se dají takovéto věci naučit, předpokládám, že asi z nějaké literatury o Excelu, že? R.“ Aj z literatúry, no veľa vecí sa dá nájsť v pomoci Excelu. Treba nájsť na disku správne *.chm súbory. Možno ich treba doplniť pri inštalácii/preinšatalácii. V MS Office 2003 to je súbor XLMAIN11.CHM. Tomu "pomocníkovi", dostupnému cez F1, som nejako neprišiel na chuť. |
||
Časová prodleva: 6 dní
|
|||
robbie Profil * |
#19 · Zasláno: 24. 2. 2010, 20:14:35
..vyřešeno pomocí funkce SVYHLEDAT a COUNTIF. Děkuji
|
||
Časová prodleva: 15 let
|
0