Hledám pomoc s Makrem v Open Office Calc
Moderátor: Moderátoři
Hledám pomoc s Makrem v Open Office Calc
- Odemkne list.
- Vybere souvislou oblast dat od počáteční buňky do konce datové oblasti v šířce 8 sloupců.
- Zkopíruje vybranou oblast o řádek níže.
- Vymaže data ve všech 8 buňkách z prvního řádku, odkud se kopírovalo, ale vzorec v jednom sloupci zůstane.
- Uzamkne list.
Hledám poradce, který dokáže pevně nastavenou počáteční buňku Value = "$B$49" nahradit sekvenci, která přečte buňku, aktuálně vybranou před spuštěním makra, a makro tak bude pracovat s různou počáteční buňkou podle potřeby uživatele.
Ten přechod na počáteční buňku je v makru na třech místech:
args3(0).Value = "$B$49" ...... výchozí buňka pro výběr oblasti
args14(0).Value = "$B$49" ..... návrat na výchozí buňku, odkud pak je posun o buňku níže jako počátek pro vložení kopie
args26(0).Value = "$B$49" ..... návrat na výchozí aktivní buňku
Pročetl jsem už mraky návodek pro VBA Open Office (např http://www.openoffice.cz/doplnky/mala-m ... office-org a jiné), ale nikde jsem nenašel postup, jak přečíst a uložit aktuální adresu aktivní buňky do proměnné, kterou bych nahradil tu pevnou adresu "$B$49".
Jsem na programování ve VBA laik a samouk, a tak mne nekamenujte. To moje "nahrané makro" je pro programátora asi úsměvné a šlo by výrazně zkrátit, ale nejde o to makro, ale jde o to, jak do něj dostat tu aktuální aktivní buňku.
Dík za pomoc.
- Přílohy
-
Basic VBA Open Office.txt- (7.7 KiB) Staženo 123 x
- sewerman_cz
- Příspěvky: 289
- Registrován: 13 úno 2011, 00:00
- Bydliště: Brno
- Kontaktovat uživatele:
Tvoje myšlenka na to, jak tu operaci provést, je samozřejmě jedna z možných. Pokud však zvolím v makru vložení celého řádku, musím do vloženého řádku nakopírovat další vzorce, které jsou za výběrem těch 8 sloupců a ještě opravit vzorec v jednom sloupci pod vloženým řádkem. Vložením řádku se ze vzorce přes dva sousední řádky např. =E48-F48+G47 udělá chybný vzorec =E49-F49+G47 místo potřebného =E49-F49+G48. Doplnění a oprava více vzorců by bylo ve výsledku složitější, než mnou zvolený postup nastíněný v dotazu, kde jsou všechny vzorce zachovány..