

Excel VBA - uložit soubor jako xlsx
Ahoj,
potřebuju radu. Už se tu s tím peru nějakou dobu
Ve vba používám k ukládání souboru metodu SaveCopyAs přesněji ActiveWorkbook.SaveCopyAs Filename:=newFile & ".xlsm".
Potřeboval bych však soubor uložit bez maker tudíž jako *.xlsx. Pokud to natvrdo vložím do kodu soubor se sice uloží, ale nejde otevřít. Excel vřeští, že přípona souboru není platná.
Nevěděl by někdo jak dosáhnout kýženého výsledku?
Díky
Vo VBA vytvoríš nový zošit a z pôvodného z neho prekopíruješ len to, čo chceš aby v ňom zostalo - výsledok potom uložíš. Viem, že to nie je úplne to, čo si si predstavoval, ale toto je štandardný postup a jednoduchšie to naozaj nejde.
Chlapi díky za reakce.
Problémem je, že já chci celý sešit s několika listy pouze bez maker. Pokud bych potřeboval jen část je to nejlepší způsob. Rozhod sem se, že zůstávám u postupu, který sem použil (uložit kopii jako xlsm, otevřít -> uložit jako xlxs a soubor xlsm smazat). Sice mi tento postup připadal jako drbat se levou rukou za pravým uchem, ale pokud není lepší možnosti budiž.
přečetl jsem si to tak 3x a nejsem si 100% jistý z čeho se vychází a co má být výsledek, případně jaké mezikroky v práci se souborem jsou nežádoucí. původní soubor s makry má být zachován a z něj se má vygenerovat co nejjednodušeji soubor bez maker.
otevřu .xlsm, ve kterém je makro, které provede uložení do nového souboru .xlsx (bez maker)
Nevýhodou je ruční potvrzení uživatelem, že to opravdu chce bez maker. Nepátral jsem, jestli to dialogové okno lze potlačit, aby se to provedlo automaticky.
Application.DisplayAlerts = False 'Potlačení dialogových oken, vhodné v závěru zase povolit