Aplikácia VBA.CutCopyMode = nepravda
Ak ste pri kopírovaní a vkladaní zaznamenávali makrá, pravdepodobne ste videli nasledujúci riadok kódu:
1 | Application.CutCopyMode = False |
Tento riadok kódu „vymaže“ schránku*. Ak ste skopírovali bunku programu Excel, spustením tohto riadka kódu sa odstráni animácia okolo skopírovanej bunky:
CutCopyMode je vlastnosť na úrovni aplikácie, ktorá indikuje, či je program Microsoft Office (napr. Excel) v režime vystrihovania alebo kopírovania. V režime kopírovania (alebo vystrihovania) má Excel v schránke niečo uložené, čo je možné vložiť.
Nie som si vedomý času, kedy by ste niekedy potrebovali nastaviť Application.CutCopyMode na True.
Vyhnúť sa CutCopyMode = False
Bežne sa môžete vyhnúť potrebe nastaviť Application CutCopyMode = False použitím osvedčených postupov VBA Copy+Paste. Nasledujúci príklad kódu skopíruje a vloží bunku do jedného riadka, čím sa odstráni potreba nastaviť CutCopyMode na hodnotu False:
123 | Sub CopyPaste_OneLine ()Rozsah („a1“). Rozsah kopírovania („b1“)Koniec pod |
Získať stav Application.CutCopyMode
Občas môžete chcieť získať stav Application.CutCopyMode. Potenciálne zabrániť chybám pri pokuse o vloženie, keď nič nie je v schránke. Ak chcete získať stav, použite nasledujúci kód:
123456789101112 | Sub Get_Application_CutCopyMode_Status ()Vyberte položku Case Application.CutCopyModePrípad je = xlCopyMsgBox „Režim kopírovania“Prípad je = xlCutMsgBox „Režim rezania“Prípad je = nepravdaMsgBox „Nie je v režime vystrihovania alebo kopírovania“Ukončiť výberKoniec pod |
*Application.CutCopyMode vymaže iba schránku aplikácie Microsoft Office (napr. Excel). Nevymaže schránku Window. Kliknutím na odkaz sa dozviete viac o tom, ako vymazať schránku Window pomocou VBA.