
excel 2010, ako sa z indexoveho zoznamu harkov presunut na dany harok 1 klikom
Budem zlucovat vela harkov do jedneho zosita(subora).
Videl som niekde ze sa da urobit prvy harok ako zoznam harkov (ako obsah v knihe).
Ak sa klikne na niektory nazov, hned to cloveka presunie na dany harok.
1, Pomocou akych funkcii sa to robi ?
2, Ako je mozne nastavit, aby sa pri kazdom novom spusteni zosita(subora), nezobrazil posledny navstiveny harok, ale ten indexovy zoznam - rozcestnik ?
Ale nie vseobecne pri vsetkych excel suboroch, ale iba pri tomto jednom.
3, Nieco som vygooglil, sa to pouzit pre moju potrebu ?
=IF(A17<>"";"";HYPERLINK("#'("&COUNTBLANK(C$3:C17)&")'!A"&MATCH(C17;INDIRECT("'("&COUNTBLANK(C$3:C17)&")'!A1:A1000");0);VLOOKUP(C17;INDIRECT("'("&COUNTBLANK(C$3:C17)&")'!$A$2:$B$1000");2;0)))
odpoveď na otázku a):
dá sa to makrom (momentálne neviem nasimulovať priradnie hyperlinkov)
Výpis názvov hárkov:
Sub Zoznam()
Sheets(1).Range("A1")="Zoznam hárkov:"
For i=2 to ActiveWorkbook.Sheets.Count
Sheets(1).Range("A" & i)= Sheets(i).Name
Next i
End Sub
Este treba doplnit kod priradenia hyperlinkov a potom sa mozes na nejake vzorce vykaslat, vsetko to za teba urobi makro (ak ti to zatial neurobi iny diskutujuci, urobim ti to az sa dostanem na PC)
Pozor, tento kod uz pocita s tym, ze prvy harok je zoznam!
odpoveď na otázku b):
1) pred zavretím súboru sa nastaviť na 1. hárok a tak uložiť
2) vložiť vo VBA do modulu zošita kód:
Private Sub Workbook_Open()
Sheets(1).Select
End Sub
(alebo naopak, nastavit harok 1 na udalost BeforeClose)
ad
1) VBA viz soubor
2) viz robert13
VBA (visial basic) = makro, vsak ?
Ja som chcel nieco jednoduche co nemusim zvlast prenasat ako makro.
Ak si prenesiem moj excel subor do ineho pc, kde je napr cisto novo nainstalovany excel, tak chcem aby to tam hned fungovalo.
Aby som mohol subor ulozit obycajne: .xlsx
Teda
- aj indexovany zoznam
- aj zobrazovanie prvej stranky so zoznamom
nuž v Exceli Ti to bez makra zoznam linkov na hárky nespraví.
A fungovať to bude aj na inom stroji. To makro viac nebudes musiet vytvarat, Siki Ti ho urobil. Ak pouzijes ten subor, ktory Ti prilozil, tak uz ziadnu robotu nemas, len do neho popridavat Tvoje harky. Ked si potom ten subor prenesies do ineho stroja, spolu so suborom sa prenesie aj makro, keďže sa nachádza v ňom. Bude to vsak musiet byt xlsm, ale neviem, preco by Ti to malo vadit...
Už len doplniť kód na autonastavenie prvej strany pri otváraní, ked by si velmi chcel (nie je nutné) a hneď môžeš začať používať...
1, Ked som si pozrel VBA, mam tam asi nieco navyse, neviem co to robi. Je to v mojich addonoch, kde mam Trim makro. Je to module1, nepremenovany:
2, Sikiho makro robi tlacitka Spat na tych harkoch, kam sa prenesiem. Lenze tam uz budem mat tabulku, tak to bude zakryvat jednu bunku.
3, Matne si pamatam, ze na prvy harok by sa dalo dostat aj klavesovou skratkou(teda nepotrebujem Spat tlacitko), cize o dovod viac nemat makro ale pouzit ten vzorec bez makra. Ked ho vies, mozes napisat ?
4, Skusal som si dat tvoj kod:
ako module - makro, ale nefunguje to.
1 robi to to, co ma v nazve : vyplna doprava... Dovod existencie takehoto makra nevidim... Vymaz
2 Sikiho makro sa da jednoducho upravit, aby nevytvaral tie tlacitka ale ja by som ich tam nechal. Daju sa zmensit tak, aby zbytocne neprekryvali velku plochu tej bunky, v ktorej su. A co na tom, ked je tam uz tabulka? Ked v jej lavom hornom rohu bude maly stvorcek na jednoduchy navrat na zoznam - aky problem?
3 nepoznam skratku na prechod na prvy harok ale staci ked kliknes na dvojitu sipku dolava v pase usiek harkov
4 ten moj kod sa dava do modulu zosita, t.j. v zozname modulov v editore VBA vidis vymenovane harky, pod tym zosit (ThisWorkbook) a pod tym sa ti vytvaraju moduly makier. Moj kod musis dat do plochy, ktora sa Ti otvori po dvojkliku na ThisWorkbook. Ze co to robi, nevies overit inak, nez otvaranim zosita. Ten kod totiz nerobi nic ine, nez ze pri otvarani zosita nastavi prvy harok.
A asi si neuvedomujes vyhodu makra voci funkcii...
Ked chces pouzit tu funkciu, musel by si si najprv ten zoznam vytvorit rucne. Pri kazdom pridavani dalsich harkov alebo ich odoberani, premenovavani a pod by si musel opat rucne poopravovat zoznam a doplnit vzorce...
Sikiho makro Ti to KEDYKOLVEK nanovo zaktualizuje, bez akejkolvek dalsej prace, na puhe stlacenie tlacitka...
Na Tvojom mieste by som sa nechcel silou-mocou vyhybat makram, vdaka nim sa daju robit zazracne veci. Nauc sa s nimi robit a uz na ne nedas dopustit.
2) Pokud Tě to irituje, že se automaticky vytváří tlačítko zpět, tak prostě smaž tento kus kódu
3) Tak nějak mi není jasný jak chceš klávesovou zkratkou používat vzorec. Motáš dvě věci dohromady. Buď budeš mít v buňce vložený hypertextový odkaz (CTRL+K), nebo budeš používat makro kterému přiřadíš klávesovou zkratku. To makro je již v modulu napsané
Odstraň slovo Private a přiřaď kláv. zkratku
4) Kód se vkládá do ThisWorkbook
1, robert13, Siki83:
Ako sa da zmenit velkost a poloha vsetkych tlacitok v tvojom(siki) makre ?
2, Siki83:
Nemotam dve veci dokopy. Napisal som, ze tvoje Spat tlacitko by tam nemuselo byt, keby sa dalo(da sa ?) dostat na prvy harok klavesovou skratkou.
3, Siki83:
Ked som prvy raz otvoril tvoj subor, nic tam nebolo. Aby som vobec nieco uvidel co si tam pridal, musel som ist: karta Vyvojar > oblast Kod > Makra. Bolo tam tvoje makro a dal som spustit.
Potom ked som nieco pomenil s harkami, lebo som skusal funkcnost makra (napr. som premenoval harok, pridal novy), a ulozil som, pri dalsom spusteni tam uz bolo vidiet to makro. Ale predtym nie.
4, Siki83:
Nepoznam syntax vba a som nevedel, ze sa da nastavit klavesova skratka na cast kodu. Skusal som to takto, ale neislo to samozrejme:
alebo
5, Pozri si video, ze klikanie na tom zozname zavisi od dlzky nazvu harku. Niekedy je to neprakticke pri kratkom mene, pretoze neplati cela plocha bunky a tiez pri dlhom mene, pretoze neplati oblast mimo bunky, aj ked je to nazov !
6, Dalo by sa to makro upravit tak, aby pri kratkych nazvoch bralo klik na celu bunku a pri dlhych nazvoch proste bunku predlzim na dlzku nazvu.
7, Alebo urobit z tych nazvov harkov tlacitka, take dlhe ako su dlhe nazvy. Nech sa velkost automaticky upravuje podla dlzky nazvu, a zaroven nech je stanovene urcite minimum dlzky tlacitka, aby sa dalo nan dobre klikat.
Video v prilohe (2.9 MB) nie je, lebo sa opakovane nepodarilo pridat. Pise ze: Nezadali ste typ súboru. Co nie je pravda. Opravte si to admini. Aj som refreshol a aj skratil nazov, tak neviem kde je problem -.-
Tak to mate tu, ale kvalita je horsia:
ADcu
1) Velikost tlačítka (zpět) je dána velikostí buňky (A1) změn velikost a automaticky se přizpůsobí velikost tlačítka. Poloha tlačítka je dána tímto řádkem kódu With Range("A1").
2)
Ano s tím souhlasím. Tlačítko tam být nemusí.
Ale dále píšeš
Klávesová zkratka je vázána na makto!
3)Makro je v souboru od samého začátku (viz video). Je to dělané tak, že se celý modul (module1) dá překopírovat nebo importovat do jiného souboru. Poté se makro spustí:
Makro vytvoří nový list "Seznam listů" a vytvoří HYPERTEXTOVÉ ODKAZY na jednotlivé listy. Zároveň pro ulehčení (aby se makro nemuselo spouštět přes vývojář...kód...makra) vytvoří tlačítko.
4) viz soubor (video)
5)
Ano, jak už sem psal jedná se o hypertextový odkaz tedy kliká se ne TEXT nikoliv do prostoru buňky.
6) Netuším jestli bude vyhovovat ale nahraď tuto část kódu
za
Nebudes verit, ale presne takuto reakciu na Tvoj pokyn na priradenie klavesovej skratky som cakal...
Urobil, co si napisal:
Odstraň slovo Private a přiřaď kláv. zkratku
Tak spravil:
ctrl+f6 Sub zpet()
V dalsej zasielke mu tam, prosim Ta, daj aj to nastavenie prveho harku pri otvarani...


1, Co som pisal do toho VBA vo videu, ze robertov script je v spravnom module. No nejde to. Preco ?
2, Ja by som rad ten kusok kodu spojil s tvojim kodom, aby to bolo v jednom module. Ako ?
3, Robert tiez hore napisal:
"Sikiho makro sa da jednoducho upravit, aby nevytvaral tie tlacitka ale ja by som ich tam nechal. Daju sa zmensit tak, aby zbytocne neprekryvali velku plochu tej bunky, v ktorej su."
- ako sa to robi ?
4, Hej ta uprava s autofit a podciarnikovanim podla najvacsieho mena je lepsia, ale mozes to prosim upravit tak, aby meno samotne bolo centrovane na na stred a to podkociarkovanie aby malo bielu farbu (ako pozadie normalnych buniek) ? Tym sa to 'strati' z oci. A tym padom podciarnikovanie bude musiet byt aj zlava.
5, Blok kodu pre vymazanie tlacitka Zpet som spravil, ale stale tam je a funguje.
6, Akym programom si nahraval obrazovku ze ti to kodovalo do .mp4, predpokladam s h264 co robi lepsiu kompresiu, teda mas taky maly subor ?
7, Ako si do videa fukol tie frejmy s klavesovou skratkou ?
Dakujem pekne
Z bodu 2 vyplyva, ze si nepochopil, ze moj kod ma byt v module zosita. Ty ho chces dat do toho isteho, kde je Sikiho kod. Tam to fungovat nebude, lebo moj kod reaguje na udalost priradenu ZOSITU a umiestnuje sa preto do JEHO modulu!
Bod 3 som sa zrejme sekol, dalo by sa to, ale musel by tam byt ovladaci prvok ActiveX a nie ovladaci prvok formulara. ActiveX ma mnozstvo vlastnosti ale zas by to znamenalo prerabat kod a ako vidim, ty by si bol najradsej, keby tam tie tlacitka neboli. Tak ich vynechaj, ako ti pisal Siki a makro Sub zpet(), ktore tam uz mas, spustaj klavesovou skratkou, ktoru si k nemu priradis... Pisem z tabletu, preto ti to neviem z hlavy popisat, kedze ja take postupy nepouzivam. Zisti si, ako k existujucemu makru priradis skratku... Ak sa nad tebou Siki nezlutuje a nenapise, zajtra ti to mozem napisat, kedze toto je jediny zmysluplny problem, ktory tu v niekolkych dotazoch riesis.
Ty zase pises pozadu. Pozri si sikiho video. A citaj pozornejsie a tiez si si asi nepozrel moje video !
Ak pises k veci, nepotrebujem na to video a nemam ani chut ho pozerat. Tocis stale o tom istom
Nepis uz viac do mojich tem.
vyčítal si mi, že som si nepozrel Tvoje video.
Tak som si ho teraz pozrel a pozrel som aj Sikiho video.
Čo si očakával, že ako zareagujem na video, keď na ňom je zas len to, čo som predpokladal: opäť Ti raz bolo niečo zbytočne písané, zas si to urobil inak...
Použijem frázu, ktorú tak rád používaš: NEČÍTAL SI POZORNE.
Tiež si mi písal, že prečo mne musíš písať všetko dvakrát...
Nuž asi preto, lebo ja som Ti riešenie písal aj viac než dvakrát a na to pošleš video, v ktorom ZAS robíš niečo INÉ
Napísal som, že točíš stále o tom istom...
Je to takto na dlhé lakte, tak nás to vytočilo oboch
Ideálne by to bolo rovno po TeamViewer-i...
No ale Siki Ti to už urobil, tak si hádam spokojný...
Siki
1) Robertův kód MUSÍ být v modulu ThisWorkbook!. Ty jsi vložil kód do modulu MODULE2 a poté jsi vložil další modul MODULE3. Do ThisWorkbook se dostaneš dvojklikem nikoliv pravým a vkládat další modul.
2) Nelze viz bod 1.
3) Už sem Ti psal, že makro vkládá tlačítko do buňky A1. A velikost tlačítka se automaticky přizpůsobuje velikosti buňky.
Jinak nastavení velikosti tlačítka má na starosti tento řádek kódu (konkrétně tučná část)
Set Tlacitko = ActiveSheet.Buttons.Add(Left:=.Left, Top:=.Top, Width:=.Width, Height:=.Height)
4) Momentálně nemám moc času se tím zabývat. Tak sem udělal jen malé úpravy viz soubor.
5) upraveno v novém souboru + přidána kláv. zkratka pro vrácení na seznam listů (CTRL+Q)
6+7) Použit program Camtasia Studio
1, Ked budes mat viac casu, napis prosim, rad by som sa k tomu vratil.
2, Ked si otvorim novy cisty excel subor, kuknem do VBA, stale tam vidim tu vatu, co tam asi nema byt. Ale on si ju tam sam vytvoril, tak nechapem tomu:
![[C1OIt38.png]](http://i.imgur.com/C1OIt38.png)
Naco to tam je ?
3, Ziskal som odniekial makro, ktore vymiena navzajom dva stlpce, riadky, bunky ak potrebujem. Ale v zdrojaku su asi komenty ze:
Mozete si to skusit u seba ci to funguje spolahlivo ?
Kedze makra sa nedaju Undo (alebo ano ? nejakym inym makrom ?), nechcem aby mi to posahalo v buducnosti nejaku dolezitu a velku tabulku.
4, Dnes som si vsimol nieco zvlastne v spravani excelu, co som predtym este asi nezazil.
A, Byvalo: Mam v bunke nieco napisane. Chcem to zmenit, tak 2x lavym mysitkom kliknem do bunky a ukaze sa vnutri bunky to blikajuce vertikalne nieco (ako sa to vola ? napr. aj teraz ked pisem toto), na mieste kurzora ako bol (napr aj v strede slova).
Teraz: Ale teraz to vobec nereaguje ! Dvojklikom sa neviem dostat do bunky pre upravu obsahu. Preco ?
B, Byvalo: Klavesou F2 uprava obsahu bunky. Cely obsah oznaceny nacierno. Ked hned zacnem pisat, cele sa to zmaze-nahradi prave pisanym.
Teraz: Nic nie je v bunke vyznacene, iba hore v riadku pre vzorce a to vertikalne oznacovadlo je na konci obsahu bunky, cize mozem hned dopisovat a nic nezmazem.
C, Byvalo: Napisem text do bunky. Napr.: 'slovo slovo'. Potom hned do bunky pod tym, zacinam pisat 'slo' - a ukaze sa mi navrhovana ponuka 'slovo slovo', je to cele cierne a ked pisem dalej stale vidim to vertikalne oznacovadlo.
Teraz: Tiez ponukne a vyplni navrhovany obsah, ale nie je to cierne, cierne je iba hore v tom vzorcovom riadku a v bunke nemam to vertikalne oznacovadlo.
Neviem prist preco sa mi vsetko takto pomenilo a same od seba !?
vieš... tomu Tvojmu: "našiel som nejaké makro"... sa ani nečudujem, že si rozhasíš celý excel...
Hovorí Ti niečo: spoľahlivý zdroj?
A aj keby si tomu zdroju dôveroval, na Tvojom mieste by som nespúšťal veci, ktorým nerozumieš a nevieš, čo robia...
Nie nadarmo býva v súboroch obsahujúcich makrá, nastavená výstraha!
Sorry, ale ja lúštiť tie kódy nebudem, k tomu len toľko, že ak budeš pozorne čítať čo sme Ti už viacerí viackrát písali, aby si sa oboznámil so základmi Excelu, nebudeš potrebovať žiadne makrá na prehadzovanie stĺpcov. Zistíš, že zameniť stĺpce (a kopec-kopec rôznych iných vecí, ktoré máš v Exceli pod nosom) nie je taká veda, aby si na to potreboval makrá...
A tie zmeny, že predtým to bolo inak... pri Tvojom prístupe to bude ešte aj horšie, neboj.
Pocuj, uz som ti povedal, ze sem prestan pisat. Len trepes ! Nic nevyriesis.
Hento makro moze akurat rozhasit obsah, nie taketo veci. Videl si v nom nieco o settings, alebo co ? Nevidel, tak netrep.
To makro som skusal, zatial funguje dobre, ale neviem co by sa mohlo stat pri... Nech to skusi niekto kto sa tomu rozumie.
K bodu 2:
VBAProject(Zošit1) - což je ten tvůj nový sešit - neobsahuje žádná makra.
VBAProject(MojeAddiny.xlam) obsahuje makra, jde totiž o soubor s doplňky, které jsi zpřístupnil v Excelu, takže jsou dostupné v Excelu jako takovém.
Ano ja viem ! Ja som sa pytal nieco ine.
Ten addonovsky subor som si spravil ja, ale to makro v module 1 tam asi nema byt. Lebo bolo povedane, ze nic nerobi. Zmazal som ho, ale stale sa vytvori.
edit: skusil som to predsa len este raz nech nezerem, ale teraz uz zostalo vymazane. Este restartnem pc.
Ok ostalo to vymazane. Aj ked stale neviem ako sa to tam dostalo.
1, Bod 4, vysiereny. Uz len 1, 2, 3.
![[ohc5a3o.png]](http://i.imgur.com/ohc5a3o.png)
Musel som ja nedopatrenim alebo program na print screen zmenit toto nastavenie:
Mozno to bol program SnagIt od Techsmith-u, lebo stale cakam na odpoved ze niekto to skusi: http://pc.poradna.net/q/view/1431192-program-na-zo snimanie-aj-momentalne-nedostupnych-casti-obrazovk y-autoscrool, tak som vyskusal este iny program.
2, Mozu makra menit nastavenia v exceli ?
Ad 2: Ano, mohou.
siki ?
ad 1) k čemu se chceš ještě vracet ?
ad 2) Modul "Module1" je součástí doplňku "MojeAddiny.xlam", buď nepoužívej (odstraň) ten doplněk nebo se jej můžeš pokusit editovat.
ad 3) Ano všechny řádky kódu začínající apostrofem (') jsou komentáře. Co se týče funkčnosti maker, tu si budeš muset otestovat sám nebo si na to najít jiného pokusného králíka. Já do toho nejdu. Sorry.
A, Podarilo sa mi to vymazat:
![[C1OIt38.png]](http://i.imgur.com/C1OIt38.png)
Len stale neviem co to vykonavalo a naco som to tam vobec mal, ked niekto hore pisal, ze je to zbytocne. Ani si nespominam ako sa mi to tam dostalo.
B, Chcem sa vratit k poslednemu suboru co si sem daval (seznam-listu-upraven .xlsm)
![[LWZ8IoG.png]](http://i.imgur.com/LWZ8IoG.png)
Ak mozes prosim ta uprav to aby:
- tam neboli bunky: 'jmeno', 'seznam listu'
- v bunke A1 bolo tlacitko 'Vytvor zoznam'- ale iba ta bunka, nie vacsie
- bunka A2 bola prazdna
- od A3 aby isli tie nazvy harkov, ale centrovane na stred
Takto zhruba:
![[2fctBbM.png]](http://i.imgur.com/2fctBbM.png)
Dakujem pekne
Tady to je. Ve verzi, která zarovnává text na střed buňky se však musí kliknout přímo na text (nelze klikat do prostoru buňky jako je tomu u buněk zarovnaných vlevo).
Super :)
Ak sa mozes vyjadrit k tomu makru na obrazku, iba mi povedz ze co si myslis co to robilo. Lebo ja som nic nebadal(predtym nez som to vymazal).
Napadlo ma, ze to zarovnanie na stred s kombinaciou klik na celu bunku, by sa mozno dalo tymito zarazkami/odrazkami:
![[a9YnIpv.png]](http://i.imgur.com/a9YnIpv.png)
Manualne, ked som to skusal, to fungovalo. Makro by to mohlo vyratat napr takto(ako ma to napadlo):
- zoberie si sirku stlpca(viazane podla najdlhsieho nazvu harka)
- zoberie si dlzku stringu nazvu harka
- vyrata si kolko je tam white space-och
- vydeli na polovicu
- tolko naklika s odrazkami na kazdy nazov harka zvlast po kliknuti tlacitka Vytvor zoznam
Dalo by sa ?
ak siki nema tolko casu
los, teba som tu dnes videl, ak vies poprosim ta
vdaka
To makro na obrázku pochádza zrejme odtiaľto. Robí to, že vyplní hodnotu z aktuálnej bunky do oblasti vpravo od nej, ale len po prvú prázdnu bunku. Ako sa ti to tam zjavilo, tak to by si mal vedieť ty.
Ten algoritmus centrovania textu pomocou odsadzovania je otras najvyššieho stupňa - prácne, neefektívne, nespoľahlivé. To už si môžeš rovno vytvárať Label-y ako ActiveX prvky, ktoré ťa na kliknutie presunú na požadovaný list. To je ale oveľa prácnejšie - dá sa to, ale sám to asi nedáš a mne sa tým nechce zabíjať čas (obsluha udalostí pre dynamické prvky je už trochu iný level).
Zopár rád k problému, ktorý riešiš:
- Na odkazy na jednotlivé listy použi funkciu HYPERLINK. S takými hyperlinkami, ktoré teraz používaš, sú minimálne v starších verziách Excelu problémy takého typu, že občas prestanú fungovať. A ako bonus funkcia HYPERLINK prežije aj otvorenie v LibreOffice.
- Pri otvorení zošita sa zobrazí ten list, v ktorom si bol, keď si zošit ukladal. Takže ak chceš, aby sa ti otváral na prvom, tak ho ukladaj na prvom. Prípadne môžeš použiť Ctrl+PgUp na to, aby si sa prepol na prvý list. Kvôli tomuto by som nepridával do zošita makro, pretože také automatické prepnutie listu je neštandardné správanie.
- Problém, že pri hyperlinku musíš kliknúť priamo na text a nie len niekde do bunky, je pseudoproblém. Skrátka klikni priamo na text. Nepridávaj si zbytočné starosti kvôli tomu, že niekto nevie kliknúť na hyperlink.
siki
pouzivam seznam listu upraven 2
ale narazil som na chybu. ked je v nazve harka apostrof ', tak pise ze: odkaz nie je platny a nepresunie ma nan
da to opravit ?
dik
Da to opravit.
Jednoducho do nazvu harka nedavaj apostrof! Kto to kedy videl!
Vidim, ze este stale si sa nedal do studia zakladov prace s PC...
ty curak, len do mna rypes
ja to musim mat v anglictine cele, a preto sa apostrofu nevyhnem !
curak si sam a budes musiet, syntax VBA a aj Excel ako taký používa apostrofy na iné účely, tak sa nečuduj, že mu robíš chaos...
Neboj, uz s tebou koncim
Ehm, apostrofu sa da vyhnut vzdy, aj v anglictine.
Necital som to tu cele, (to je tak na pol dna), ale tak si predsa ten odkaz uprav tak, aby fungoval, ked nutne potrebujes apostrof. Bud treba ten apostrof escapovat (\pred neho alebo co) alebo zapisat ako hex hodnotu, v zavislosti od toho co to tam mas za makra alebo co to tam vlastne robis.
Ja VBA neviem. Do nazvov apostrof musi ist. Cize vo VBA sa musi odignorovat ako koment a zobrat ako pismeno, ak bude v strede nazvu. Predpokladam ze cez nejaku IF podmienku
siki, los, ak ste tu, popravite to prosim ? Chcem to uz pouzivat
To sa nerobi cez ziadne if ale ten apostrof sa zvycajne escapuje specialnym znakom pred tym, ak ma byt vnutri stringu.
Co tam mas vlastne za odkaz a jak to mas momentalne urobene? Skopiruj sem ten odkaz alebo VBA funkciu ktorou vyvolavas ten odkaz (prepnutie listu)
Toto su 2 makra v jednom module:
Druhe je to Sub zpet. Pri stlaceni ctrl+q ma vrati na zoznam harkov
Potom do dalsieho modulu davam toto, aby ma pri kazdom otvoreni suboru vratilo na prvy harok s tym makrom:
Co som urobil:
vsetky potrebne harky co som mal v suboroch ako .xls, som ulozil do novej podoby .xlsx. Vsetky harky zo vsetkych suborov som preniesol do jedneho spolocneho suboru.
Potom som tam pridal to makro, ale nejako to nefungovalo do druhe Zpet makro.
Je dovolene nakoniec pridat makro co sluzi na pracu s harkami, ci to musi byt ako prva vec vlozena do noveho suboru ? Nechapem, taketo malickosti co mi nevychadzaju, mi zaberaju kopu casu. Neviem preco sa to deje..
Co sa tyka toho apostrofu problem je toto
googli si jak sa robia hyperlinky s apostrofom (anglicky sa to vola single quote)
P.S. a riesenie nema nic s VBA, ale suvisi to so syntaxou hyperlinku v exceli, ak si vygooglis syntax hyperlinku v exceli, tak uvidis hned preco to nefunguje. Az najdes jak to escapovat alebo inac uzavret ten nazov zositu v hyperlinku, tak potom neni problem to napisat do VBA scriptu.
Podla tohoto
107468
sa to escapuje dvojitymi apostrofmi, takze skus to zmenit na toto
nie som si isty ci sa to da takto rovno prasknut tam replace funkcia, ak to bude hadzat error tak napis urobim tam dalsiu premennu
P.S. a na tom webe ti aj microsoft jasne pise
In general, avoid using apostrophes in your worksheet names.
Za tym nasleduje vycet problemov ktore budes mat ked tam budes cpat apostrofy.
Funguje to, dik moc. Ani to nebolelo, taka mala uprava a ostatni z toho robia...
super
Mala uprava ktora ale znamenala minimalne polhodinu googlenia po MS weboch, aby clovek vedel preco sa to deje a jak sa to da escapovat. Ostatni z toho robia ... pretoze s tym apostrofom budes mat aj X dalsich problemov ptz excel programoval nejaky debil, takze ti spravne pisali vyssie ze ten apostrof pouzivat nemas. Alebo druha moznost nepouzivaj excel.
Prenesením makra do iného zošita sa neprenesie aj priradenosť ku klávesovej skratke. Makro "Zpet" je treba znova naviazať na skratku CTRL+Q.
Za ďalšie, hárok 1 musíš mať nazvaný tak, ako je nazvaný vo VBA t.j. "Seznam listu"
Za ďalšie, makrá si môžeš do zošita preniesť kedy chceš.
Za ďalšie, počnúč Excelom 2007 je potrebné zošity obsahujúce makrá ukladať vo formáte xlsm
Za ďalšie všetkým problémom by si sa bol vyhol, keby si si bol svoje hárky preniesol do Sikiho predpripraveného zošita, čo som Ti už písal, ale ty samozrejme nedávaš pozor na to, čo sa tu hovorí...
Vzdy ked otvorim sikiho subor mi vyskakuje: je to z internetoveho zdroja povolit otvorenie, a tiez Povolit obsah ?
Povoliť. Vieš o čo ide, robil Ti ho Siki. (Dúfam, že ho už máš stiahnutý a spúšťaš ho u seba)
Ja mám 2007, kde sa to nepýta, tak neviem ako sa toho zbaviť ale skús si ho "uložiť ako" a či pri ďalšom otváraní bude chcieť povolenie zas...
Ovšem apostrofový problém ostáva...
Pocuvaj robertko
okolo teba sa svet netoci, to ze ty nie si ochotny tu poradit nic neznamena. Nie si jediny kto ovlada VBA. Hoci som ta videl kodit hocikomu inemu v inych temach, dobre ze si sa neisiel pretrhnut od ochoty. Bolo dobre viditelne ako to robis natruc.
Teraz ked som preniesol vsetky harky do spolocneho zosita, narazil som na problem, ze dlzka nazvu harka je dost obmadzena na to, aby sa dalo plnohodnotne pomenovat vsetky harky pre ich rozlisitelnost v zozname.
Tak ma napadlo, ze ci by sa nedalo upravit makro, aby aj s tymi sucasnymi bunkami, presuvalo aj ob-susedne bunky, kde si napisem poznamky k tomu.
Pre istotu nechcem, aby to presuvalo cele riadky, ale radsej iba bunky v zozname s nazvami harkov + ob-susedne bunky s komentmi.
Prikladam finalny subor, ktory budem pouzivat a naznacil som v nom ako by to mohlo byt.
Dik moc
Prosím administrátora, aby medzi emotikony zaradil aj vztýčený prostredník
stale potrebujem
A s čím konkrétne nevieš pohnúť?
Ako zvycajne. Neovladam makro vba programming ani trosku. Prosim o napisanie celeho riesenia.
Ale ide len o modifikaciu toho, co uz siki porobil.
Stiahni si ten subor je to tam naznacene. Opakujem, co som uz vyssie napisal:
potrebujem zviazat pozicie komentovych buniek k poziciam zoznamovych buniek. Teda ked zmenim poradie sheetov v subore a kliknem na Make list, aj komentove bunky sa presunu - palalelne k zoznamovym k prisluchajucemu harku.
Nechcem aby sa menili cele riadky ale iba konkretne bunky.
cize:
Make list
sheet1 koment1
sheet2 koment2
sheet3 koment3
zmena poradia:
Make list
sheet1 koment1
sheet3 koment3
sheet2 koment2
bunka koment3 a koment2 si uspesne vymenia pozicie prisluchajuc k ich sheetu.
Teraz to tam vobec nie je implementovane, cize ak sheety v zozname zmenia poradie, komentove bunky ostanu na svojej pozicii bezo zmeny
Dakujem
up
Pred pregenerovaním zoznamu si musíš aktuálne komentáre odložiť do nejakého slovníka, aby si ich potom mohol vložiť do správnych buniek. Ako slovník môžeš použiť buď Collection, ktorý je priamo súčasťou jazyka, alebo Dictionary, čo je komponent z knižnice Microsoft Scripting. Nevýhoda je, že keď ti nejaký list zo zoznamu ubudne, tak sa nenávratne vymaže aj ten komentár.
Jednoduchšia možnosť je mať komentár pre list priamo na každom liste, takže makro pre generovanie zoznamu by ten komentár len prebralo z daného listu. Zjednodušilo by ti to kopec vecí, tak sa nad tým zamysli.
Na napísanie celého riešenia si budeš musieť počkať na niekoho iného, než som ja. Ale keď ide podľa teba "len o modifikáciu", tak to možno zvládneš aj sám. Možno si počas toho uvedomíš, čo od ostatných žiadaš, aby pre teba robili zadarmo. Možno zistíš, že už teraz za teba urobili kopec roboty. S prístupom typu nič neviem, ničomu nerozumiem, nechápem základy, nechcem sa nič učiť, nepohnem ani prstom a spravte to celé za mňa - tak s takým prístupom každému raz dojde trpezlivosť a mám taký pocit, že najlepších borcov na Excel si už odradil.
los, mm
neviem, ci sa chapeme spravne. ale asi nie, lebo ste si ten moj subor nestiahli.
to makro vygeneruje list zo sheetov v subore = ok mame
![[MQPzyFo.png]](http://i.imgur.com/MQPzyFo.png)
ak sa zmeni poradie sheehov, zmeni sa poradie aj v zozname = ok mame
takto to vyzera:
tie komenty v stplci C som tam dopisal manualne a podla potreby.
jedine, ozaj jedine a jednoduche o co som vas slusne poprosil je iba zviazaznie bunky C3 k A3, aby ked sa zmeni poradie sheetov, C3 sa posunula na rovnaky riadok ako je A3.
ake jednoduche !
nic dalsie nerobime. tzn. ze ked sheet vymazem, tak sa zmaze aj ta bunka s komentom. a ked vznikne novy sheet, tak tam ziaden koment nebude pokial ho rucne nenapisem.
toto co chcem je jednorazova zalezitost a pomoc mne. ked to spravim, tak skoro s makrami robit nebudem. cize uz sme to mohli mat vsetci davno za sebou.
ja od vas nechcem super kodenie co by niekde inde ohodnotili na velke peniaze. toto su par riadkove sprostosti, tak nechapem kde je problem.
ked by som sa kvoli tomu mal ucit cely VBA, tak by to bol nezmysel, lebo aj tak by som to velmi skoro zabudol, kedze uz s makrom nic robit nebudem !! ja nerobim s excelom kazdy den, len toto som mal ako staru zalezitost, ku ktorej som sa musel vratit. preco ked to viete a trva vam to 5 min, ale naschval to nespravite.
ja som tym cakanim uz zabil niekolko dni, to je lepsie podla vas ?
dufam ze sa vam to vrati, ked aj vy budete nieco potrebovat a ten kto to vie sa na vas vykasle
Chápeme sa správne.
neda sa to zviazat. makro neni jasnovidec.
A ani ja nerobim s excelom ani s VBA som vzivote nerobil, ono to neni o nejakom uceni, ale o tom ROZMYSLAT ze jak sa to da urobit. Na to sa nemusis nic ucit, predstav si ze tam mas ten zoznam a zmenis nazov sheetu a este ho kamsi presunies a teraz si predstav ze ty si makro, ktore nema nikde nic ulozene, jak priradis ten komment k comu, ked uz povodny sheet s povodnym nazvom neexistuje lebo si ho premenoval?
Mozes si prehladavt vsetky povodne nazvy a porovnavat s novymi, je to komplikovane, a ak zmenis aj nazov, tak uz to nenajde k comu ten komment patri.
Tie kommenty pis do jednotlivych sheetov, potom je jednoduchsie generovat ten zoznam. (potom tam staci dopisat 1 riadok).
Makro totiz nic nepresuva, ale generuje od nuly. (netahal som to ale predpokladam to)
Napr. ak bude ten komment na kazdom liste v bunke A1, tak si myslim ze staci pridat za
Cells(i + 1, 1) = Sheets(i).Name
novy riadok:
Cells(i + 1, 2) = Sheets(i).Cells(1,1)
pisem o to mmakre ktore si pastol vyssie, netahal som xls.
Ano v tom pridas za ten riadok ten dalsi riadok a bude to brat kommenty z A1 bunky na sheetoch. Teda ak tam v tomriadku nemam nejaky error :)
Ale komenty zacinaju v C1 a nizsie (hore je obrazok)
teda hovoris ze nieco mam nahradit inym, ci nanovo pridat ?
Precitaj si este raz co som pisal a pomaly.
1. kommenty ktore si dopisujes k zoznamu ti ziadne makro nebude spravovat, ptz ich to makro nevytvorilo. Je to jasne?
2. kommenty si mozes davat na jednotlive listy, potom ich moze makro davat na zoznam automaticky. Je to jasne?
3. ak budes mat kommenty na jednotlivych listoch (na kazdom sheete v bunke A1 bude tvoj KOMMENT pre dany sheet) tak do makra za ten riadok ktory som napisal pridas dalsi riadok ktory som napisal. A makro bude automaticky vytahovat kommenty z kazdeho sheetu (bunka A1) na ten zoznam. Bunka sa da zmenit Cell(1,1) mozes zmenit na akykolvek iny Cell(riadok, stlpec)
P.S: mozno ten novy riadok bude treba takto: Cells(i + 1, 2).Value = Sheets(i).Cells(1,1).Value
To je problem. Pokial to spravne chapem, navrhujes, aby som komenty vpisoval dovnutra sheetu na vopred urcene miesto. Napr.:![[vJrTKK9.png]](http://i.imgur.com/vJrTKK9.png)
Lenze to si nemozem dovolit, lebo kvoli komentu nemozem prerabat uz hotove mega veci v harkoch a tiez pri novom sheete nemozem vsetko predvidat, ze kde to bude najmenej zavadzat.
Tak mas smolu, nepresuvaj harky :)
Potom je nutne si na zaciatku makra ulozit vsetky doterajsie nazvy & kommenty do nejakeho pola apod (viz co pisal los), a potom pre kazdy jeden sheet prehladat to pole ci pre dany nazov existuje comment. A ak zmenis nazov sheetu tak to comment nenajde.
P.S. mam pocit ze robis v exceli nieco na co vobec neni urceny, a vymyslas si nerealizovatelne konstrukty.
1, Komenty nemozem umiestnit napr. do A10000 pretoze ked robim s tabulkou a je dlhsia, tak nechodievam na jej koniec (neoznacujem konkretne bunky) ale jednoduchsie je oznacovat cele riadky, stpce; pretoze viem ze za tabulkou uz nic nieje a ani nebude.
Teda ked by tam niekde bol koment, velmi by mi to predlzovalo pracu s tabulkou a bolo by to take neslobodne.
2, Los pisal o tych Dictionary, Collection. Cize ked by som zmenil nazov harka, komenty by sa stratili lebo by boli viazane na konkretny nazov. To je problem.
A ked zmazem harok, zmaze sa aj koment, to mi vobec nevadi.
3, Ak sa bublinove komentare rozijdu, tak potom uz ani nie je ina moznost ako to komentovat. Ci ?
Když máš tedy problém s umístěním popisu listu do nějaké konkrétní buňky (i když myslím, že třeba umístění v buňce A10000 by vzhled tabulky neohrozilo), nemohl bys na ten popis využít komentáře k buňce?
komentáre k bunkám v hárku zoznamu by sa mu pri aktualizácii rozišli ale ako vravíš, neverím tomu, že nemôže niekam inam umiestniť svoj koment. Napr ako píšeš A10000
Komentár by sa ale dal priradiť napr aj do onej bunky A1 a do zoznamu by si ho natiahol z komentu bunky A1.
To len na margo našej diskusie...

On, ako notorický ignorant a vyrábač pseudoproblémov, keďže netuší, čo robí, nebude si to vedieť ani urobiť, takže nech sa páči, môžete mu to niekto urobiť
A ak by ste náhodou dlho nereagovali, dá si príspevok "up" sám, aby dosiahol zaradenie opät do začiatku fóra
Sorry MachR55, dodatočne som si uvedomil, ze si mal iste na mysli komentáre v jednotlivých hárkoch, nie v zozname...

Kua kua, zas som mu pomohol v zaradeni dotazu do zaciatku fora
Človek by mu to aj spravil, napriek tomu, aký je arogantný, veď napokon ide len o "pár riadkov sprostostí" len už vidím, ako mu tam vadia tie červené trojuholníčky komentárov... a že ak náhodou zablúdi myšou nad takú bunku, tak mu tam komentár prekryje nejaký dôležitý text, prípadne mu nenavrhneme dostatočne veľký rám komentára ak tam bude musieť napísať dlhší text, ktorý sa nezmestí do uška hárka.
OK už budem dobrý a dám mu pokoj...
OK daj sem posledný stav ale boh ťa chráň, ak zas budeš frflať a vymýšľať svoje špeciality!!!
A co mu chces spravit, ked to neni mozne spravit?
BTW. to s tym kommentom v A1 bude potom nejak
Cells(i + 1, 2).Value = Sheets(i).Cells(1,1).Comment
alebo tak nejak.
Nemal by to byť problém
co navrhujes prosim ta
kuk na moj post o 13:36
Tak chces to riesit ty?!?
Vravim ti, ze daj sem posledny stav (dufam,ze si ho nemodifikoval !!!) a nestaraj sa!
Pises, ze sa tomu nemienis venovat, tak naco ti mam vysvetlovat, co s tym idem robit?
Upozornujem vsak, ze analyzovat to nebudem, len ti doplnim komenty. Ak si si to medzitym dokalicil, tak sorry.
A ked este vyjdes s nejakou blbinou, tak dostanes vystrelovaci dazdnik do analu a otvorim!
Pisal si si s inymi clenmi tejto diskusie, tak odkial som mal vediet, ze chces pomoct ? Aj ked za cenu rypania a vulgarizmov
zas príliš filozofuješ...
čakaj...
Tu máš...
Komentáre sú vždy v bunkách A1 aj keď sú nevidteľné.
Upravíš si ich tak, že klikneš na A1 pravým tlačidlom a dáš upraviť komentáre...
Pozor, akonáhle budeš v komentároch zalamovať Enterom, prenesie sa to zalomené i do hárku so zoznamom, čo asi nechceš...
A už prosím ťa nechaj Excel na pokoji!
Nie je za čo...
A len tak na margo:
Ja som vulgarizmus na teba prvý nepoužil, len som Ti ho vrátil
ok vdaka
![[qHOfLLl.png]](http://i.imgur.com/qHOfLLl.png)
1, takze si pripisal tieto 3 riadky. to bolo vsetko co by som o tom mal vediet pre buducnost ?:
prvy:
druhy, treti:
![[wlCUZEO.png]](http://i.imgur.com/wlCUZEO.png)
Komenty su v oblasti pouzivanych buniek v harkoch na poziciach A1.
Ak nieco robim s bunkou ako zvycajne, tak sa s tou manipulaciou vezie aj koment. Co je blbe.
2, Da sa nasilu ukotvit ten koment aby ostal iba v tej jednej bunke, bez ohladu na manipulaciu a formatovanie ?
3, Da sa nastavit, aby sa po ocitnuti kurzora na bunke, nezobrazovala ta bublina komentu ?![[k8oD2Dl.png]](http://i.imgur.com/k8oD2Dl.png)
4, Da sa urobit makrom, aby ked zmenim obsah komentu v harku1 so zoznamom, aby sa tie zmeny automaticky premietli do skutocnych komentoch v harkoch na pozicii A1 ?
Toto by bolo idealne, pretoze hentak upravovat komenty je nachylne na omyly a neprakticke.
dakujem
Ano, to sú všetky zmeny, ale načo to hľadáš? Vravel si, že s tým už nikdy nebudeš robiť!
Bubliny som pred chvíľou popísal, musíš si ich vypnúť. Že ako, nájdi si v linku od MachR55 ku komentom buniek
Aby sa zmena komentu preniesla do hárku zoznam - zaktualizuj si tlačidlom zoznam a máš to.
Sorry, viac toto už fakt neriešim.
Nie
Napisal som ze zmena v zoznamovom harku aby sa preniesla do komentu v A1 a tym padom sa ulozila, zachovala
nie toto takto nepôjde, chceš zas niečo nové.
Dá sa to - ďalším makrom ale povedal som, že dosť
S pánom Bohom, idem od Vás... neublížil som, neublížil sooom, žiadnemu z váááás
aj tak viem, ze si to tu budes citat, ked niekto nieco nove napise, len s tym rozdielom ze to odignorujes
fakt pekne
Nedalo Ti to?
Ale vidíš... nevyhovuje... ako som vravel: budú mu vadiť indikátory komentárov, "bublina"...
A ke-by-že sa náhodou zmieri s komentármi, vieš, čo bude problém s týmto Tvojim makrom?
Že si mu na to nevyrobil tlačítko a bude to musieť ísť spustiť do vývojára...
A pochybujem, že pochopil, že sa jedná o jednorazovku, aby nemusel vstupovať jednotlivo do existujúcich hárkov pre dopĺňanie komentárov.
Následne je totiž logické, že keď si vytvorím nový hárok, tak rovno ho vybavím aj komentárom...
Takže mám obavy, že onedlho riešime to, že keď pomení hárky (premenuje, odstráni, zmení poradie...) a pred tým, než zaktualizuje zoznam, spustí makro pre priradenie komentárov tak mu odrazu vyskočí hláška, pretože taký hárok neexistuje alebo sa mu priradí koment do nesprávneho hárka atd atd atd atd atd atd atd atd
Proste mu môžeš donekonečna vymýšľať tých pár riadkov sprostostí, ako to nazval...
siki som rad ze si dosiel
dik za pomoc
skusil som toto makro pridat na koniec povodneho, aby sa to vsetko naraz porobilo po stlaceni tlacitka Make list.
chybu nepise, ale nefunguje to. Asi to nebude take jednoduche
Nečítal si, čo som písal Sikimu, že?
Písal som mu, že určite nepochopíš, že toto je jednorazovka!
Tým že si to pridal do jestvujúceho makra naspodok, znamená, že (keby nenarazilo na chybu pri neexistujúcom komentári v A1) by si naplnil zoznam neexistujúcimi komentmi (lebo ich nemáš v hárkoch) a potom následne by si naplnil bunky v hárkoch komentmi, ktoré neexistujú.
Len nechápem načo sa hráš na programátora a začleníš si to do jestvujúceho makra!
Keď niečo nechápeš, ako funguje, tak s tým nenarábaj svojvoľne!
Sikiho makro Ti malo jednorazovo zo zoznamu naplniť komenty do hárkov.
Koniec
End
Punktum!
A tým na to môžeš zabudnúť
Je predsa logické, že keď si budeš vytvárať nové hárky, tak hneď do hárku založíš aj koment, ktorý budeš chcieť privolať do zoznamu.
Takže ešte raz a pomaly:
-Nalož do toho súboru VŠETKY svoje hárky (zálohu svojich hárkov si preboha samozrejme nechaj!).
-Riadok s kódom: "Cells(i + 1, 3) = Sheets(i).Range("A1").Comment.Text" označ ako komentár (apostrofom na začiatku), pretože inak akonáhle program zistí hárok bez komentu, ide do chyby.
-Vytvor si zoznam tlačítkom (avšak bez tvojej modifikácie - t.j. Sikiho makro, čo si tam pridal, zas pekne vysuň do samostatného makra)
-Pripíš si k vytvorenému zoznamu komenty do stĺpca C
-Jednorazovo spusti SAMOSTATNÉ Sikiho makro
-Zabudni na Sikiho makro
-Odstráň znak komentára (apostrof na začiatku) v riadku s kódom: "Cells(i + 1, 3) = Sheets(i).Range("A1").Comment.Text"
-Pri každom založení nového hárka ho hneď ošetri komentárom v bunke A1 (kým nezistím, ako overiť, či bunka obsahuje komentár a dám Ti doplniť jeden riadok sprostostí)
-Napíš ďalšiu kravinu, čo Ti zas nefunguje alebo nevyhovuje
Uprav si riadok:
Cells(i + 1, 3) = Sheets(i).Range("A1").Comment.Text
na tento riadok sprostosti:
If Not (Sheets(i).Range("A1").Comment Is Nothing) Then Cells(i + 1, 3) = Sheets(i).Range("A1").Comment.Text
a môžeš si z môjho postupu v predošlej odpovedi vynechať riadky týkajúce sa toho riadka (t.j. odrážku 2 a 7)
(t.j. označenie za komentár a zrušenia označenia komentára)
Aké jednoduché, však?
A ostatní z toho robia neviem čo... !
Ok dik
cize toto by mala byt finalna verzia:
1, Pri testovani: Ked pridam novy koment, aplikujem sikoho makro, vymazem koment, aplikujem sikoho makro. Nemalo by v danom harku ostat nic, ale vidim:
![[WBimRD9.png]](http://i.imgur.com/WBimRD9.png)
Da sa makro upravit, aby si po sebe upratalo bubliny bez obsahu ?
2, V praxi, ked sa vratim k mojmu suboru po dlhsom case, moze sa lahko stat, ze okomentujem zopar novych harkov a zabudnem spustit sikoho makro predtym ako stlacim Make list.
Dalo by sa sikiho makro nasilu implementovat dovnutra tlacitkoveho makra, aby pri stlaceni tlacitka Make list, este predtym ako ten list urobi, aby aplikoval sikiho makro ?
vdaka
1) Uprav Sikiho kód nasledovne:
A vravel som Ti, že v budúcnosti už nemá význam opakovane aplikovať toto makro ale môžeš, keby si pridal väčšiu dávku nových hárkov bez komentov v A1.
Ale musíš zas spustiť nezávisle, že prečo, viď bod 2
2) Nečítal si pozorne. Načo by si to implementoval? Vieš čo by to robilo?:
Vyčítalo by to komenty z buniek A1 jednotlivých hárkov a opätovne ich poprepisovalo za to isté. Aký to má význam?
Vravím Ti: v budúcnosti začni tým, že do nových hárkov pri ich vytvorení hneď založ do A1 koment!
Keď chceš dodatočne v budúcnosti doplniť alebo opraviť komenty v bunkách A1, doplň ich rovno do svojich hárkov. Potom aktualizuješ zoznam tlačítkom.
Hotovo!
Nie nie
ved predsa sikiho makro funguje tak, ze ak ja urobim zmenu komentu v prvom harku(tam kde mam zoznam a tlacitko Make list), tak sa to prenesie-ulozi do daneho harku na poziciu A1. Nie opacne ako si to ty pochopil.
A o to ide, ja potrebujem komentmi rozlisit harky v zozname. Teda komenty ma zmysel vytvarat iba v tom zozname, aby sa dalo porovnavat.
Cize napisem koment do C stplca a ked stlacim Make list, chcem aby sa to zapisalo do A1 v danom harku, ktoreho sa to tyka.
Veď to robím!
A nejde o žiadne porovnávanie, ide o priradenie
Neanalyzuj, konaj!
"Veď to robím!"
- teda mam pockat na dalsiu upravu ?
Ďalšia úprava nebude
Na kieho koňov by si vytváral nanovo komenty v prvom hárku?
Toto Ti má ušetriť jednorazovú prácu pri prvotnom naplnení komentov do jednotlivých hárkov.
Upravené Sikiho druhé makro "Update_comments" ich potom naloží do buniek A1 v jednotlivých hárkoch.
Keď budeš chcieť zmeniť koment v niektorom hárku, TAK UŽ HO BUDEŠ MENIŤ V TOM HÁRKU!!!!!
Ale ok, môžeš to použiť nanovo, keď Ti zas pribudne dávka nových hárkov bez komentov v A1, ALE:
Každopádne najprv zaktualizuješ zoznam tlačítkom, ručne dopíšeš do stĺpca C komenty kde neboli alebo chceš zmeniť a použiješ "Update_comments"
Podstatné je ale to, že to musí byť urobené nezávisle, nie začlenene do programu, ktorý Ti robí zoznam, lebo by si si tie ručne dopísané komenty zničil tým, že by boli hneď prepísané vytvorením zoznamu so starými (prípadne prázdnymi) komentami, chápeš?
Ako Ti to ešte povedať?
Vobec si ma nepochopil.
Cely ucel tohto vsetkeho tykajuceho sa komentov je:
- komenty si vzdy pisem v prvom harku tzv. zoznamovom harku.
- komenty skovane v nejakom konkretnom harku na pozicii A1 pre mna nemaju vyznam, lebo su tam skovane a ja ich potrebujem vidiet v zoznamovom harku kde su vsetky pokope. Cize tam(A1) su len pre ucely makra, aby sa to vobec nejako dalo urobit. Su tam ako vedlajsi produkt !
- tlacitko Make list, chcem pouzivat aj na 'ukladanie' komentov do svojej domovskej pozicie A1 v harkoch. Cize sa to musi udiat skor, ako sa vytvori zoznam, aby sa neprepisali nicim alebo predoslym ako si napisal vyssie.
- vzdy ked napisem novy koment do prazdnej bunky v C stlpci, zmazem koment, zmenim koment;; tak pri stlaceni tlacitka Make list, sa aktivuje sikiho makro Update_comments(), urobi svoju pracu a potom sa aktivuje makro Sheet_lister(). Cize velmi logicky, prakticky, efektivne vyriesene. Tak ako to prosty rozum kaze od zaciatku, len v exceli sa to neda tak lahko porobit.
Vobec si ma nepochopil. Do zoznamu sa ti budu natahovat tvoje komenty, vycitane z jednotlivych harkov! Ked uz v harkoch budu!
Zoznam nie je na to, aby si odtial zadaval komenty. Siki ti pomohol tie komenty priradit k harkom. Ano, je to pohodlnejsie naplnit odtial, ked nabiehas na tento styl prace a prvotne by si mal vela prace preklikavat sa po harkoch a doplnat komenty. Ale ked zakladam novy harok, tak ho uz rovno vybavim aj komentom! Len kvoli tomu, ze sa ti neda pouzit dlhsi text pre nazov harka! Takze ty predsa uz pri zakladani noveho harka vies, aky tam chces koment tak preco ho tam hned nezadat?
Napriek tomu som ti povedal, ze to mozes pouzit aj inokedy, ale popisal som ti postup a dovod. Ja to prerabat kvoli tvojej pohodlnosti nebudem...
Aj doteraz, co som ti popisal, tak len kvoli tomu, ze to bolo len urcite "odladenie nedokonalosti" ale myslim, ze takto ti to uz musi fungovat. Dalej to uz neriesim. Odovzdavam stafetu dalsim zaujemcom o spolupracu s tebou.
Ok budem cakat na dalsieho spolupracovnika.
Ale stavim sa, ze keby si to mal robit takto ako je to teraz, rychlo by ta to omrzelo. Plus fakt ze po pracovnej odmlke so suborom, by si zabudol manualne aplikovat sikiho makro. Lebo naco, ked sa to da spravit rozumnejsie, co paradoxne nechces urobit, lebo vyhovorka pre moju pohodlnost.
Tak isto by sa mohli vyhovorit programatori IDE-ciek programovacich jazykov. Lebo sak kod sa da kludne napisat aj vo windowsackom .txt, tak naco by robili nadstandartne fíčury ....
A jeje opičkuješ po heavenlee?
Spravil som chybu, ked som sa dokopal do druhej serie pomoci pre teba.
Si arogantny nevdacnik.
Ubezpecujem ta, ze viac sa mojej pomoci nedockas.
napadá ma, že vypnutie indikátorov komentárov je vec nastavenia aplikácie, nie súboru, takže si to budeš musieť asi vypnúť sám...
Indikator komentaru je ten cerveny trojuholnik ?
Aj ked ho skryjem stale sa bude viezd s bunkou(ten komentar)
ano, úlohou komentára je poskytovať informáciu k tej bunke, takže s tou bunkou ostane stále, kým ho nezrušíš.
Tak si ujasni, či to chceš alebo nie... Ale to sa už budeš musieť pýtať iného.
Lebo teraz ked presuniem tu bunku s komentom inde, vratim sa k zoznamu, dam Make list, tak sa posaha cele makro a nefunguje to uz
Tak nepresuvaj tu bunku inde. OMG.
Ked chces mat tie kommenty automaticky v zozname, tak musia byt niekde v tych sheetoch. Inac sa to zviazat so sheetom neda (resp. neviem o tom)
Ok, ale tiez to plati aj pri kopirovani. Oznacim ju, skopirujem a mam tam aj koment.
Inak pravym som na to klikal a nenasiel som nic ako zakazat pop up tej bubliny alebo cerveneho trojuholnicka
Bol by si ochotny to so mnou dokoncit ?
Komenty skryt sa mi podarilo a aj tie trojuholnicky ale globalne vsetky naraz
http://www.officetooltips.com/excel/tips/how_to_hi de_display_comment_indicators.html
Co je problem, pretoze v jednom harku mam napisane komenty k vzorcom ako rataju a je to tam treba. Nie je tam miesto vedla niekde, kde by sa to napisalo klasicky do bunky.
Ach Boze...
Ty FAKT nie si kompletny!!!
Kua, ved tam teda tie komenty NECHAJ!!!
Ked ti nevadia komenty k vypoctom, preco ti vadi koment k A1?!?!
A na kieho pi*u manipulujes s bukami A1?!?!
A propos, načo sem dávaš link, že aký si šikovný a našiel si, kde sa dočítaš o komentároch, keď som Ťa odkázal na poslednú odpoveď od MachR55, kde nám dal link na onú nápovedu?
Ešte existuje možnosť mať tú tvoju poznámku uloženú v makre toho listu, ku ktorému patrí. Definuješ si tam Public funkciu pomenovanú napr. GetDescription, ktorá vráti text poznámky, a potom ju už len budeš (dynamicky) volať. Takže poznámka nemusí byť v bunke alebo v komentári, ale v makre. Nič zložité.
Oups, práve som sa dozvedel, že indikátory komentárov je možné skryť! Wow! Díky MachR55!

Kto by bol povedal, že sa o komentároch ešte dá niečo dozvedieť!
Tak predsa malo význam sledovať túto diskusiu :D
Na Exceli je stále čo objavovať!
Námet pre adminov:
Navrhujem stránku doplniť tlačidlom pre prechod na poslednú odpoveď, to rolovanie je nekonečné...
(alebo to tu niekde je, len som si to nevšimol?)
PgDn resp. lepsie je End. Zoznam hore je tiez klikaci.
nuž čo, som pako

ja som posuvníkom stiahol nadol... problém bol, keď sa to rozčlenilo do viac strán, tak som musel prepnúť stránku a zas posuvník nadol
No a na tablete ešte horšie, tam ani klávesnica End, ani posuvník...
Ten zoznam ma nenapadol

Profesionálna deformácia...
Díky
Ja mam vsetko na 1strane, nemas nahodou nastavene strnakovanie v svojom profile?
a veru mám...
opravené!
Díky

Reagoval sem na toto:
Robert má pravdu pokud však trváš na spuštění makra (Update_comments) před vytvořením seznamu stačí vložit jeden řádek kódu do:
Děláš to však na vlastní riziko !!!
stačí ak zmení poradie hárkov a obslúži tlačidlo a má to v prdeli ale kto chce kam, pomôžme mu tam...
Je to loteria ? Co by sa mohlo zle stat, nerozumiem.
Ak vravis, ze to nie je dobre, dalo by sa co navrhol Los ?
"Ešte existuje možnosť mať tú tvoju poznámku uloženú v makre toho listu, ku ktorému patrí. Definuješ si tam Public funkciu pomenovanú napr. GetDescription, ktorá vráti text poznámky, a potom ju už len budeš (dynamicky) volať. Takže poznámka nemusí byť v bunke alebo v komentári, ale v makre. Nič zložité."
dik
Makro sem psal jen pro aktualizaci komentářů, podle Tvého požadavku. To znamená, že provedeš změnu komentáře a ručně (klávesovou zkratkou) spustíš makro. To jak se to bude chovat při každém vytvoření seznamu si budeš muset otestovat sám.
To co navrhuje Los není složité pro Losa. Já sem se s tím nesetkal, tudíž netuším jak na to. Budeš muset počkat na něj.
To je problem, lebo on sa tu niekde uz vyjadril, ze ziaden kod uz pisat pre mna nebude
A dal som tam ten novy riadok. Nenapisal si odsadenie. Tak som to skusil takto:
![[hejE1wX.png]](http://i.imgur.com/hejE1wX.png)
![[eaB9swi.png]](http://i.imgur.com/eaB9swi.png)
aj takto:
Komenty to zachova, ale uz si nedrzia svoju poziciu vzhladom na svoj harok v zozname.
up
up
up
Ešte jeden nezmyselný príspevok podobného typu a vlákno zamknem.
Namiesto upovania si vytvor na kazdom liste makro s public funkciou nazvi si ju jak chces (trebars GetDescription), jak ti pisal los. Funkcia len vrati string.
P.S> a zabudni na to ze si budes editovat kommenty na prvom liste. Vymyslas si uplne gebuziny, naprogramuj si normalnu aplikaciu, ta bude robit presne to co chces, a ne znasilnovat excel.
Ale to by predsa mal zas povinnost vybavovat jednotlive listy makrami! On proste nemieni mat dalsiu pracu, len si upravit komenty na harku zoznamu. Sikiho makro update_komments by sa dalo upravit, aby kommenty pridelovalo nie doradu ale podla nazvov harkov, co vsak znamena preverovanie existencie harka... A ked zisti neexistenciu, tak dotaz, ci s tym suhlasi a pod a pod a pod. A ked mu niekto pre jeho pohodlie bude venovat svoj cas, tak ho odmeni tak, ze jeho pracu a vedomosti nazve ako par riadkov sprostosti. On proste ziadnu namahu vynalozit nemieni... Sice som mu tymto zas spravil "up" ale vidim, ze uz konci a ak sa mieni takto spravat, tak uz aj jeho meno bude podnetom na ignorovanie dotazu. Ak aj zmeni meno, myslim, ze uz ho spozname...
Pockaj teraz nechapem. Los napisal, ze sa to bude dat ak:
"Ešte existuje možnosť mať tú tvoju poznámku uloženú v makre toho listu, ku ktorému patrí. Definuješ si tam Public funkciu pomenovanú napr. GetDescription, ktorá vráti text poznámky, a potom ju už len budeš (dynamicky) volať. Takže poznámka nemusí byť v bunke alebo v komentári, ale v makre. Nič zložité."
Ty si to tiez napisal:
"Namiesto upovania si vytvor na kazdom liste makro s public funkciou nazvi si ju jak chces (trebars GetDescription), jak ti pisal los. Funkcia len vrati string."
Ale potom si napisal, ze nebudem moct pisat poznamky v prvom liste, aby sa ulozili to makra a potom z makra vytiahli, ked sa bude robit list tlacitkom Make list.
Lenze to je nutnost vyriesit to tak, aby som mohol komenty upravovat v zoznamovom liste. Inac to cele strati zmysel.
robertko napisal nizsie ze:
"Sikiho makro update_komments by sa dalo upravit, aby kommenty pridelovalo nie doradu ale podla nazvov harkov, co vsak znamena preverovanie existencie harka... A ked zisti neexistenciu, tak dotaz, ci s tym suhlasi a pod a pod a pod."
Z toho ale neviem posudit ako to myslel, ci sa to da alebo neda.
Este ma napadla taka vec, ze ak je skutocne pravda, ze navrhovane riesenie Losom, by znamenalo manualne vytvorit v kazdom novom harku nove makro, tak nebolo by mozne napisat makro aby to robilo same ?
Ze bude zvlast makro na to, ze ked sa objavi novy harok v zosite, automaticky sa k nemu priradi to vseobecne makro, ktore bude mat na starosti uchovavanie komentov.
Dobry napad, co povies MM ?
Ale stale musi platit, ze editujem komenty vyhradne v prvom harku.
Obavam sa, ze tu ti uz ziadne makro nikto neurobi...
Takze moja posledna (a vobec nie ironicka) rada:
Na vsetko zabudni, urob si zoznam harkov manualne, pricom si tie harky v zozname nazvi ako len chces (aj s apostrofmi) a manualne si ich naviaz hypertextovymi odkazmi na prislusne harky. A vsetko ostatne bude zalezat na tvojej inteligencii narabania s obycajnym zositom excelu xlsx.
Zbohom!
Stale to riesim, ale teraz sa chcem vratit k tomuto mini makru:
Robi to, ze ked otvorim subor, otvori sa mi to vzdy na prvom harku. Ale ten zoznam harkov je dlhsi ako zobrazovacie pole obrazovky (ano, ak ked si dam mensiu lupu) a problem je, ze excel vzdy lipne na poslednom riadku z toho zoznamu, cize je to dole a zakazdym sa musim posuvat hore na zaciatok listu.
Potreboval by som to makro upravit tak, aby sa aj bunkovy kurzor excelu dal prinutit, aby spocival na jednej hornej bunke (napr. A1, alebo na tej kde je tlacitko Make list).
Dalo by sa ?
Dik
Ked si chcem oddychnut od mysi a pouzivat excel bez nej a otvorim si ten subor s vela harkami, chcel by som sa presuvat do danych harkov od-enterovanim na danej kurzorovej bunke v zozname.
Tzn. otvorim si subor, stlacim CTRL+Home, sipkou dole - zoznamom dole a enter. Ale enter urobi, ze prejde na dalsi riadok.
Je mozne upravit v tom jednom harku spravanie excelu, ze stlacenie enteru na zoznamovej bunke, bude znamenat to, akoby som tam stlacil lavym mysitkom ?
Dakujem
V nastaveních Excelu máš volbu, co má kurzor po stisknutí Enter udělat. Když si nastavíš aby zůstal v buňce, tak tam zůstane.
Pozrel som si to cele, ale nesplna to moje poziadavky pretoze:
- ak to nezafajknem, po od-enterovani ostane bunkovy kurzor na svojom mieste, ale aj bez akejkolvek aktivity
- zmeni to vsade, ja potrebujem len v jednom harku
- tym nastavenim sa neda prinutit, aby robil klik, ako napr vo windowse