Excel makro na určenie, či je zošit otvorený

Keď uvažujete o automatickom otváraní excelových zošitov, zvážte, čo sa môže stať, ak sa pokúsite otvoriť knihu, ktorá je už otvorená. Vo svete bez VBA sa Excel pokúsi znova otvoriť súbor, pričom sa zobrazí hlásenie s upozornením, že všetky neuložené zmeny sa stratia. Pred takýmto výskytom sa môžete chrániť tak, že pred opätovným pokusom o jeho otvorenie skontrolujete, či je daný súbor už otvorený.

Excel makro na určenie, či je zošit otvorený

Vyhnite sa tejto varovnej správe.

Ako funguje makro

Prvá vec, ktorú si treba na tomto makre všimnúť, je, že ide o funkciu, nie procedúru Sub. Ako uvidíte, vytvorenie tohto makra ako funkcie vám umožní odovzdať mu ľubovoľný názov súboru, aby ste otestovali, či je daný súbor už otvorený.

Podstata tohto kódu je jednoduchá. Testujete daný názov súboru, aby ste zistili, či ho možno priradiť objektovej premennej. K premennej objektu možno priradiť iba otvorené zošity. Pri pokuse o priradenie uzavretého zošita k premennej sa vyskytne chyba.

Ak je možné daný zošit priradiť, zošit je otvorený; ak sa vyskytne chyba, zošit sa zatvorí.

Funkcia FileIsOpenTest(TargetWorkbook As String) Ako boolovská hodnota
'Krok 1: Deklarujte svoje premenné
    Dim TestBook As Workbook
„Krok 2: Povedzte Excelu, aby pokračoval v chybe
    Pri chybe Pokračujte ďalej
'Krok 3: Skúste priradiť cieľový zošit k TestBooku
    Nastaviť TestBook = Workbooks (TargetWorkbook)
'Krok 4: Ak sa nevyskytla žiadna chyba, zošit je už otvorený
    Ak Err.Number = 0 Potom
    FileIsOpenTest = Pravda
    Inak
    FileIsOpenTest = False
    Koniec Ak
End Function

Prvá vec, ktorú makro urobí, je deklarovať premennú String, ktorá bude obsahovať názov súboru, ktorý si používateľ vyberie. TestBook je názov vašej premennej String.

V kroku 2 poviete Excelu, že pri spúšťaní tohto kódu môže nastať chyba, a v prípade chyby pokračujte v kóde. Bez tohto riadku by sa kód jednoducho zastavil, keď sa vyskytne chyba. Opäť otestujete daný názov súboru, aby ste zistili, či ho možno priradiť objektovej premennej. Ak je možné daný zošit priradiť, je otvorený; ak sa vyskytne chyba, je zatvorený.

V kroku 3 sa pokúsite priradiť daný zošit k premennej TestBook Object. Zošit, ktorý sa pokúšate priradiť, je premenná typu String s názvom TargetWorkbook. TargetWorkbook sa odovzdá funkcii v deklaráciách funkcií (pozri prvý riadok kódu). Táto štruktúra eliminuje potrebu pevne zakódovať názov zošita, čo vám umožňuje odovzdať ho ako premennú.

V kroku 4 jednoducho skontrolujete, či sa nevyskytla chyba. Ak sa chyba nevyskytla, zošit je otvorený, takže FileIsOpenTest nastavte na hodnotu True. Ak sa vyskytla chyba, zošit nie je otvorený a FileIsOpenTest nastavíte na hodnotu False.

Túto funkciu možno opäť použiť na vyhodnotenie akéhokoľvek súboru, ktorý jej odošlete, prostredníctvom argumentu TargetWorkbook. Toto je krása uvedenia makra do funkcie.

Nasledujúce makro ukazuje, ako implementovať túto funkciu. Tu zavoláte novú funkciu FileIsOpenTest, aby ste sa uistili, že používateľ nemôže otvoriť už otvorený súbor:

Pod makro1()

'Krok 1: Definujte premennú typu String

    Dim FName ako variant

    Dim FNFileOnly As String

'Krok 2: Metóda GetOpenFilename aktivuje dialógové okno

    FName = Application.GetOpenFilename( _

            FileFilter:="Zošity programu Excel,*.xl*", _

            Title:="Vyberte pracovný zošit na otvorenie", _

            MultiSelect:=False)

'Krok 3: Otvorte vybraný súbor, ak ešte nie je otvorený

    Ak FName <> False Then

    FNFileOnly = StrReverse(Left(StrReverse(FName), _

                 InStr(StrReverse(FName), ") - 1))

Leave a Comment

Ako zmeniť pozadie v PowerPointe 2019

Ako zmeniť pozadie v PowerPointe 2019

Naučte sa, ako jednoducho zmeniť pozadie v PowerPointe 2019, aby vaše prezentácie pôsobili pútavo a profesionálne. Získajte tipy na plnú farbu, prechod, obrázky a vzory.

Ako používať štatistické funkcie v Exceli na počítanie položiek v množine údajov

Ako používať štatistické funkcie v Exceli na počítanie položiek v množine údajov

Excel poskytuje štyri užitočné štatistické funkcie na počítanie buniek v hárku alebo zozname: COUNT, COUNTA, COUNTBLANK a COUNTIF. Pre viac informácií o Excel funkciách, pokračujte.

Klávesové skratky pre bežné príkazy zobrazenia Excel 2013

Klávesové skratky pre bežné príkazy zobrazenia Excel 2013

Objavte efektívne klávesové skratky v Exceli 2013 pre zobrazenie, ktoré vám pomôžu zlepšiť produktivitu. Všetky skratky sú začiatkom s Alt+W.

Ako nastaviť okraje stránky v programe Word 2013

Ako nastaviť okraje stránky v programe Word 2013

Naučte sa, ako nastaviť okraje v programe Word 2013 s naším jednoduchým sprievodcom. Tento článok obsahuje užitočné tipy a predvoľby okrajov pre váš projekt.

Ako používať štatistické funkcie na výpočet priemerov, režimov a mediánov v Exceli

Ako používať štatistické funkcie na výpočet priemerov, režimov a mediánov v Exceli

Excel vám poskytuje niekoľko štatistických funkcií na výpočet priemerov, režimov a mediánov. Pozrite si podrobnosti a príklady ich použitia.

Ako zistiť a opraviť chyby vzorcov v Exceli 2016

Ako zistiť a opraviť chyby vzorcov v Exceli 2016

Excel 2016 ponúka niekoľko efektívnych spôsobov, ako opraviť chyby vo vzorcoch. Opravy môžete vykonávať po jednom, spustiť kontrolu chýb a sledovať odkazy na bunky.

Archivácia priečinkov programu Outlook

Archivácia priečinkov programu Outlook

V niektorých prípadoch Outlook ukladá e-mailové správy, úlohy a plánované činnosti staršie ako šesť mesiacov do priečinka Archív – špeciálneho priečinka pre zastarané položky. Učte sa, ako efektívne archivovať vaše položky v Outlooku.

Vytváranie a formátovanie tabuliek v programe Word 2019

Vytváranie a formátovanie tabuliek v programe Word 2019

Word vám umožňuje robiť rôzne zábavné veci s tabuľkami. Učte sa o vytváraní a formátovaní tabuliek vo Worde 2019. Tabuľky sú skvelé na organizáciu informácií.

Výber rozsahu Excel VBA

Výber rozsahu Excel VBA

V článku sa dozviete, ako umožniť používateľovi vybrať rozsah v Excel VBA pomocou dialógového okna. Získajte praktické tipy a príklady na zlepšenie práce s rozsahom Excel VBA.

Výpočet percentuálneho rozptylu so zápornými hodnotami v Exceli

Výpočet percentuálneho rozptylu so zápornými hodnotami v Exceli

Vzorec na výpočet percentuálnej odchýlky v Exceli s funkciou ABS pre správne výsledky aj so zápornými hodnotami.