
LibreOffice ActiveCell
Dobrý den. Včera sem zkoušel nějakou práci v LibreOfficu, a potřeboval sem udělat tlačítko které do Aktivní buňky(Buňka kterou máte vybranou) zapíše titulek z tlačítka. Vím že v Excelu stačilo jen ActiveCell = bunka.Caption, ale v LibreOfficu to tak nejde. Ví někde prosím jak je to makro správně? Díky moc.
Neviem, či to v LibreOffice ide, ale ani v Exceli to nie je tak, ako píšeš.
V Exceli to má byť : ActiveCell=cmdTlacidlo.Caption
(pričom cmdTlacidlo je názov prvku typu ActiveX)
Špatně sem to uvedl, má to být přesně tak jak píšeš, ale takhle to v Libre nejde :(
Neviem nakoľko je LibreOffice kompaktibilné s VBA.
Má LibreOffice záznamník makier? Dá sa v LibreOffice vložiť ovládací prvok typu ActiveX? (Prvku sa dá prideľovať množstvo vlastností, vrátane .Name a .Caption, čo potrebujeme)
Predošlý príkaz je potrebné zapísať do udalostnej procedúry v module hárka, v ktorom sa nachádza tlačidlo:
Takhle sem to právě psal do libre poprvé, a vyskočila mi chyba že není deklarovaná proměnná
Medzitým som odskúšal použitie iného ovládacieho prvku (nie ActiveX ale ovládací prvok formulára)
V takomto prípade sa kód píše do štandardného modulu makier a ovládaciemu tlačidlu sa pridelí spúšťanie makra PrepisPopisku
Pričom názov prvku (tu Button 2 si musíš zistiť napr. nahratím makra, kde nič iné nespravíš, len označíš prvok, t.j. stlačíš CTRL + klik na tlačidlo). Makro zastavíš a pozrieš, akým spôsobom zapísal označenie prvku...
V prípade takéhoto prvku (nedá sa prideliť názov ani popisok) sa musí prejsť cez jeho označenie (selection), čím umožníš zistiť text v tlačidle a na záver, aby si označenie prvku zrušil, musíš označiť niečo iné, napr. zopakuješ výber aktívnej bunky.
Skús
Nie je deklarovaná premenná?!? Aká?
To znamená, že označenie ActiveCell považuje za premennú.
A to znamená, že aktívnu bunku LibreOffice nazýva inak. Musíš už len zistiť, že ako...
Skús napr: ActiveCell = 5
Zapíše do aktívnej? Ak nie a dá rovnakú chybovú hlášku, potvrdzuje to predošlú úvahu.
U toho kódu vyskočí chyba, že u ActiveSheet není proměnná objektu nastavena
Asi se tedy v Libre Office k aktivní buňce přistupuje jinak - jak, to netuším, používám jen MS Excel. Takže doporučuji Ti použít "zlaté programátorské pravidlo" - když selžou všechny pokusy, podívej se do nápovědy.
Nahraj si v LibreOffice primitívne makro: napr uloženie čísla 5 do bunky B1:
V Exceli:
Pozri si, ako to v LibreOffice záznamník makier zapíše a aplikuj to na svoj prípad.
Ak ani to nejde, tak potom ako píše Machr55 vyššie: nápoveda alebo literatúra...