Příspěvky uživatele


< návrat zpět

Strana:  1 ... « předchozí  287 288 289 290 291 292 293 294 295   další »

Urobil som ti to makro. Funguje tak ako chceš. Podrobne som ho popísal, ale zdá sa mi že tie komentáre ho trochu spomaľujú. Tak si ich prípadne skús dať preč.

Tie Tabuľky (objekty) to všetko komplikujú.

Škoda, že to musí byť Tabuľka. Inak by stačilo sa odkazovať na Dynamicky počítanú oblasť
=OFFSET(List1!$B$3:$D$3;;;(1+COUNTA(List1!$B$4:$B$103));)
Toto ale nefunguje korektne ak to nastavím v "Zmeniť veľkosť tabuľky" ani ak "Zmeniť veľkosť tabuľky" odkážem na pomenovanú oblasť definovanú týmto vzorcom. Riadok do rozsahu Tabuľky sa pridá aj naformátuje, ale nelogicky ho nedokáže ubrať. Škoda, dalo by sa to doplniť o riešenie od pepe74287.
S SQL ti nepomôžem, dokážem ti potom pomôcť jedine makrom.

Nie, to nefunguje. Keď zadáš číslo 2, stále číta január. Musíš pripočítať riadok pre každý mesiac. Ja som to v predošlom príspevku poriešil cez MATCH. Potom ale musíš použiť INDIRECT, čo nesie zo sebou ďalší problém, že sa ti kopírovaním vzorca/bunky nezmení stĺpec, čiže musíš odkazované stĺpce prvý krát zapísať ručne, alebo použiť nejaký komplikovaný prepočet čísla stĺpca na písmeno stĺpca, alebo použiť RC1.
Tá moja verzia, ale podľa mňa funguje OK.

Niečo takéto ?
Zmenil som aj aby to zobrazovalo názov dní podľa jazykového nastavenia. Mesiac si môžeš vybrať v rozbaľovacom zozname. Zrovnal som ti formátovanie.

- Dám kopírovať "tab1" a "tab2", a to 1 kópiu.
- Vytvorí mi list "12.3.2015-TR-1-TB".
- Zaplním tie 3 bunky pod bunkou "hodnota" v "tab1", pričom adekvátne bunky v "tab2" nechám nevyplnené.
- Stlačím "Ulož PDF a spočítaj vyplnené bunky", do listu "Databaza" sa mi vloží do stĺpca "TAB1" číslo 3, a do stĺpca "TAB2" číslo 0.

Ak ťa dobre chápem, funguje to presne ako chceš.
Mám Office 2013 Pro SK 64-bit.

Nevšimol som si, že to kolega už robí. Keď som pozeral naposledy, tak to tu ešte nebolo.
Každopádne som spravil svoju verziu, použil som ten jeho predošlí kód, upravil, doplnil. Funguje to aj na akýkoľvek výber, to znamená kľudne vyber aké chceš bunky, riadky, nesúvislé, to je jedno, ak nájde medzi súbormi obrázok odpovedajúci názvu bunky vo vybranej oblasti, vloží ho.

Ak chceš vkladať napr. do A20:A100, nemusíš označovať A20:A100. Označ celý stĺpec (klik na uško) a on do A1:A19 nič nevloží ak nenájde také obrázky. Ak chceš vložiť iba niektoré z obrázkov, a pritom adresár obsahuje aj obrázky korešpondujúce s inými bunkami v stĺpci, musíš logicky vybrať iba tie bunky ktoré chceš. Teda napr. máš obrázky pre A1:A100, ale chceš vložiť iba A20:A100, v tomto prípade nemôžeš označiť celý stĺpec "A" ale iba A20:A100.

Ešte to kontroluje správnosť odkazu na bunky, a samozrejme nedovolí vloženie do nevybraných buniek. Sú tam ošetrené aj nejaké chyby, ale bez Messages (to si dorob, vidíš kde je On Error, a Exit Sub).

Zadávanie horného okraja som poriešil a je to docela presné. Aj prvotné nastavenie šírky ľavého a pravého stĺpca, do ktorých sa netlačí. Ale Excel, pokiaľ je mi známe, neumožňuje zadať šírku sĺpca v cm, preto existujú rôzne algoritmy na prepočty. Ja som použil jeden, čo som našiel, ale rovnako nieje presný, ako aj Application.CentimetersToPoints. Prečo to musia byť voľné stĺpce ? Lebo ako píšeš, potrebuješ podčiarknutie aj v týchto stĺpcoh do ktorých sa netlačí, a ak to nebude stĺpec ale okraj, tak tam nič nevytlačíš, lebo na okraj sa netlačí, ten vymedzuje netlačenú plochu. Procedúru Nastav použiješ iba raz, nastaví šírku týchto stĺpcov. Problém ale je v tom, že každá tlačiareň má vytlačiteľnú plochu. Proste aj keď dáš napr. pravý okraj na 0, nebude 0, ale napr. 0,5 cm. Ako zistiť šírku vytlačiteľnej plochy a jej posunutie sa mi neporadilo zistiť.
Preto by som ti aj vzhľadom na nepresnosť Excelu v nastavení šírky stĺpca, doporučil, nachystať si potrebný počet stĺpcov v prostrednej tlačenej časti strany, a vyskúšal akú nepresnosť ti dá na makro Nastav, a upravil si to manuálnym posunutím šírky stĺpca. Za pár minút snahy a 2-3 vytlačené pokusy to máš nastavené. Keďže potrebuješ 5cm a 7 cm po stranách. Z tohto čo ti tu posielame, použi len horný okraj, tlačenie a automatické formátovanie, zabezpečujúce podčiarknutie.

A teraz otázka pre odborníkov. Prečo mi Excel tlačí miniatúry znakov - viz. príloha PDF, ak tam mám podmienené formátovanie používajúce fnc vo VBA ?
=Row()=LastRow()
Kontroluje akýkoľvek posledný riadok, nielen v stlpci B.
Ak ho dám preč, a použijem vrozec, ktorý ale funguje len na stlpec B, je to OK, a veľkosť písmen je v poriadku.
=Row()=MATCH(TRUE;INDEX(ISBLANK($B$1:$B$100);0;0);0)-1

Nepočíta sa tam ale s akoukoľvek zmenou. Či už v menách alebo ich počte, a už vôbec nie s rokmi. Ďalej čo ak nieje priestupný rok. Je bezpodmienečne potrebné aby sa "Karolinka" vyjadril/a. Či napr. chce kalendár s posúvaným začiatkom, tak ako to má v "Harmonogram směn", alebo či chce kalendár s menením názvov dní.
Nech dá definitívne a upresňujúce informácie nap. o:
- Kde vlastne bude/je úplný zoznam pracovníkov. Bude dopĺňaný?
- Zásadná vec - budú pribúdať mesiace a roky vo forme nových listov v tomto zošite ? To totiž mení všetko, od toho sa všetko odvíja.
- Nech určí ktorá tabuľka smien ostane, niesú totiž rovnaké.
atď....
Navrhoval by som zoznam pracovníkov dať do "Setup", a v "Harmonogram směn" nechať len čistý výstup informácií, obdobne ako to urobil "kmarecek" na "list1".

Hlavne je ale potrebná komunikácia zadávateľa ... 1

Ahoj.
Po dlhšej dobe som si k tomu zase sadol. Ak je to stále aktuálne, pozri na prílohu. Vysvetľovať sa mi to nechce, makro som dopodrobna okomentoval. Urobil som aj nejaké zmeny v zošite, na to prídeš :)
Išlo ti hlavne o to spočítanie vyplnených/neprázdnych buniek, to funguje aj pri kópiách. Čo som pochopil to funguje, ale nepochopil som načo je list "zoznam" a makro "zadatrequest_funkcnypokus".
Daj vedieť, čo a ako.

Takmer sa mi to podarilo, ALE:
-Neviem rozlúsknuť spočítanie napr. dovolenky za celý vybraný rok, vybraného pracovníka. Iba za vybraný mesiac. Nech robím čokoľvek s maticovými vzorcami, stále hádžu chybu. Niekto zdatnejší snáď pomôže.
-To isté platí o súčte hodín za rok.
-Odstránených niekoľko problémov, ako chybné formátovanie buniek, zlúčené bunky (nemôžu byť pri maticiach), posunutie tabuľky Leden o riadok (všetky mesiace musia byť rovnaké)
-Vypĺňanie tabuľky je urobené pomocou "brutálnych" vzorcov s neustálym vyhľadávaním a prepočtom pozície, dňa, hodnoty. Tu som narazil na neprekonateľný problém (asi len v mojom Exceli 2013), keď nemôžem do Správcu názvov dať komplikovanejší vzorec s vyhľadávaním VLOOKUP a MATCH. Okamžite hádže chybu. Ak to isté skopírujem do bunky, okamžite všetko funguje. Veľmi frustrujúce. Preto sú tie vzorce v tabuľke nehorázne neprehľadné, ale nebolo ich možné zjednodušiť pomocou Názvov.
-Upravil som názvy listov (mesiac + rok), neboli konzistentné
-Na listoch sú vyplnené kolónky počty hodín u dovolenky a choroby D a N, na liste "Harmonogram směn" niesú. Bral som data odtiaľ. položka Hodiny je v listoch už bez prestávky, v Harmonograme je s ňou.
-V tabuľke som urobil aj podmienené formátovanie na zvýraznenie D a N
-Doplnil som jeden celý riadok tabuľky, pretože ak mesiac začne v nedeľu, 30. 31. by sa nevošlo.
atď. atď.
-Zatiaľ som nechcel používať VBA, aj keď v ňom by to bolo oveľa jednoduchšie. Ale neviem ako inak sa bude kontrolovať, aké roky už existujú v názvoch listov, a ako získať ich zoznam inak ako cez VBA. Tento zoznam je potrebný pre výber roku.

Proste je s tým dosť veľa problémov.
Posielam súbor, snáď som aspoň v niečom niekoho nakopol k riešeniu. Určite niekto urobí oveľa jednoduchšie konštrukcie vzorcov, a hlavne by mohli byť maticové.

Ak by ti to pomohlo, spravil som ti to pomocou makra.
Cez to CHOOSE to ja urobiť neviem, tak aspoň takto.
Pekný deň.
Heslo : "-ElninoSlov-" bez úvodzoviek

Ahoj
Prosím Ťa v bodoch mi ešte raz vysvetli, čo má presne robiť tento zošit. Nejak sa v tých komentoch strácam.
Otázky:
1. Prečo názov Tabulka00 odkazuje na oblasť A36:F38. Ostatné názvy Tabulka01-07 odkazujú na farebné časti, typovo podobné. Tabulka07 ale odkazuje na A63:F70, čiže na posledné dve farebné časti. Nieje to ďalšia chyba ? Je to nesúrodé.
2. Keď do bunky B3 zadáš "A" alebo "B", tak sa ti majú zmeniť tie veľké čisla v F39:F67, podľa toho čo je napísané pod daným písmenom v modrej tabuľke "zdroj dat" teda B23:C30 ?
3. Načo je určený "prazdny riadok" 14 ?
4. Na čo je prázdny rozbaľovací zoznam v D12 ?
5. Bunky V18:V19 berú nulový dátum z neoznačených buniek B18:B19
4. Na druhom hárku spomínaš list "tabulka", ktorý neexistuje, rovnako ako tlačítko "ULOZ POCET ZAPLNENYCH BuNIEK". Myslíš tým tlačítko "spocitaj" a hárok "pocet zaplnenych buniek" ?
5. Čo bude potom s tými skopírovanými hárkami ? Pár krát použiješ stlačítko "Kopíruj" a neprehľadne veľa hárkov.
6. Máš tam pár kozmetických chýb. Riadok 66 a 70 sú dvojnásobne vysoké, F43:F54 chýba pravý rám, nevystredené písmo riadok 37 ...
7. Čo sa to má vlastne spočítať pri stlačení "spocitaj". Výsledok spočítania tej štvorbunkovej oblasti sa vynásobí počtom kópií danej oblasti v celom zošite ? Ak raz zadám 2 kópie, pritom budú označené oblasti tabulka02 a tabulka04. Vytvorí 2 identické listy, na ktorých bude po jednom kuse tabulka02 tabulka04. Keď znova vykonám kopírovanie s označením tabulka02, má ten súčet spočítať tie švorbunkové oblasti len s tých prvých dvoch identických kópií, alebo k tomu prirátať aj rovnakú oblasť z tretieho listu? Alebo sa má zrátať len súčet daných švorbunkových oblastí len v danej skupine kópií, ktoré boli na raz urobené ?
8. Budú sa v tých skopírovaných hárkoch potom nejako upravovať data ?

Je tam strašne veľa nepovadaného/nezrozumiteľného. Navyše nejaké technické a logické komplikácie. Čím viac to upresníš, tým skôr ti niekto pomôže.

Ak som ťa správne pochopil tak potom takto.

Ak slovom ZOZNAM myslíš iba rozsah buniek, tak potom asi takto - Kopiruj zoznamy.xlsm.
Ak tým ZOZNAM myslíš rozbaľovací zoznam, tak potom takto - Kopiruj zoznamy 2.xlsm.
Ale to je blbosť, lebo ten rozbaľovací zoznam, musí mať od niekiaľ data, a je predsa jednoduchšie testovať tie data ako obsah rozbaľovacieho zoznamu.

Kvôli tebe som si narýchlo urobil virtuálnu sieť. A bohužiaľ, na disku sa to správa tak ako má. Na sieti do toho vstupuje systém alebo Excel, natívnym upozorňovaním na otvorený súbor. Táto natívna featurka navyše podľa netu obsahuje bug, keďže nezobrazuje vždy korektné meno. My by sme potrebovali túto featurku (Lock Open File PopUp Message) vypnúť. Preštudoval som už niekoľko ENG fór, no zatiaľ som na nič poriadne nanarazil. Rôzne rady s odstraňovaním vlastníka súboru, vypínanie FileInfo Popup Message (neviem kde), ešte nejakej fnc, ktorej 3-písmennú skratku si nepamätám... Keď bude viac času, ešte pohľadám.


Strana:  1 ... « předchozí  287 288 289 290 291 292 293 294 295   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