Spuštění makra pouze jednou
Moderátor: Mods_senior
Spuštění makra pouze jednou
Dobrý den, potřeboval bych poradit s makrem.
Jde udělat aby se mi při otevření sešitu, po kliknutí na tlačítko, makro spustilo pouze jednou?
Po uložení a znovu otevření sešitu zase pouze jednou?
Děkuji za pomoc.
Jde udělat aby se mi při otevření sešitu, po kliknutí na tlačítko, makro spustilo pouze jednou?
Po uložení a znovu otevření sešitu zase pouze jednou?
Děkuji za pomoc.
Re: Spuštění makra pouze jednou
Do Excelu vložíš jakýkoliv objekt (to bude to tlačítko), a přes pravé tlačítko myši mu přiřadíš makro.
A potom když na to tlačítko klikneš, tak se makro jednou spustí.
A potom když na to tlačítko klikneš, tak se makro jednou spustí.
Re: Spuštění makra pouze jednou
A když na to tlačítko klikne podruhé?
ASUS Prime Z390-P / Hexa Core Intel core i5 Coffee Lake-S / Gigabyte GeForce GTX 650 Ti / FORTRON BlueStorm Bronze 80PLUS / W 11
-
Uziv00
Re: Spuštění makra pouze jednou
Netuším, jestli to nelze jinak. Ale šlo by to možná takto:
- jednu buňku rezervovat pro kontrolní proměnnou
- při spuštění si makro zkontroluje buňku, když je prázdná, uloží hodnotu do buňky
- takže při dalším spuštění už v buňce hodnota je, tedy se makro neprovede.
A dodat makro, které se bude spouštět při ukládání souboru a bude mazat tu buňku...
Nebo makro může smazat ten objekt, kterým se spouští a při uložení ho zase doplní.
- jednu buňku rezervovat pro kontrolní proměnnou
- při spuštění si makro zkontroluje buňku, když je prázdná, uloží hodnotu do buňky
- takže při dalším spuštění už v buňce hodnota je, tedy se makro neprovede.
A dodat makro, které se bude spouštět při ukládání souboru a bude mazat tu buňku...
Nebo makro může smazat ten objekt, kterým se spouští a při uložení ho zase doplní.
Re: Spuštění makra pouze jednou
ITCrowd píše:Netuším, jestli to nelze jinak. Ale šlo by to možná takto:
- jednu buňku rezervovat pro kontrolní proměnnou
- při spuštění si makro zkontroluje buňku, když je prázdná, uloží hodnotu do buňky
- takže při dalším spuštění už v buňce hodnota je, tedy se makro neprovede.
A dodat makro, které se bude spouštět při ukládání souboru a bude mazat tu buňku...
Nebo makro může smazat ten objekt, kterým se spouští a při uložení ho zase doplní.
Děkuji za inspiraci, hned jdu na to.
Re: Spuštění makra pouze jednou
Můžeš použít globální proměnou, která si zachovává platnost do uzavření souboru.
Re: Spuštění makra pouze jednou
Aha, takhle jsem ten dotaz nepochopil.
Já bych to udělal jinak (abych to nemusel řešit přes buňku) jak navrhuje Grimm:
Tímto makrem do proměnné "povolit" zadám pravdu, to mě udělá Excel automaticky při otevření sešitu:
( https://office.lasakovi.com/excel/vba-p ... i-skriptu/ )
A ve vlastním makru se příkaz vykoná jen pokud je hodnota "true" a pak se nastaví "falze", a tím je zajištěno, že se makro spustí jen při prvním stisknutí tlačítka:
Já bych to udělal jinak (abych to nemusel řešit přes buňku) jak navrhuje Grimm:
Tímto makrem do proměnné "povolit" zadám pravdu, to mě udělá Excel automaticky při otevření sešitu:
( https://office.lasakovi.com/excel/vba-p ... i-skriptu/ )
Kód: Vybrat vše
Private Sub Workbook_Open()
povolit = True
End SubA ve vlastním makru se příkaz vykoná jen pokud je hodnota "true" a pak se nastaví "falze", a tím je zajištěno, že se makro spustí jen při prvním stisknutí tlačítka:
Kód: Vybrat vše
Sub luko02420()
If povolit Then 'moje makro
povolit = falze
End SubRe: Spuštění makra pouze jednou
Tak já to pochopil ještě trochu jinak než Atari, tedy bez automatického spuštění.
Kód se má spustit tlačítkem, ale pouze jednou, pokud dojde k uzavření sešitu kód bude možné znovu tlačítkem spustit viz soubor
Kód se má spustit tlačítkem, ale pouze jednou, pokud dojde k uzavření sešitu kód bude možné znovu tlačítkem spustit viz soubor
- Přílohy
-
- Bylo jiz spusteno.xlsm
- (12.93 KiB) Staženo 64 x
Re: Spuštění makra pouze jednou
Ano, přesně tuto funkcionalitu jsem navrhoval. Jenže Grimm to udělal inteligentněji (a hlavně jednodušeji), než já. 
Re: Spuštění makra pouze jednou
Děkuji všem za pomoc.
Nakonec budu muset použít radu jak píše ITCrowd, protože rada od Grimma byť je vynikající se mi bije s jiným makrem, které používám na automatickou zálohu při uzavření sešitu.
Pomoc od Grimma uchovám pro pozdější využití.
Ještě jednou děkuji
Nakonec budu muset použít radu jak píše ITCrowd, protože rada od Grimma byť je vynikající se mi bije s jiným makrem, které používám na automatickou zálohu při uzavření sešitu.
Pomoc od Grimma uchovám pro pozdější využití.
Ještě jednou děkuji
-
- Podobná témata
- Odpovědi
- Zobrazení
- Poslední příspěvek


