Ako prispôsobiť ponuky skratiek Excel 2016 vo VBA

Pred Excelom 2007 používali programátori VBA objekt CommandBar na vytváranie vlastných ponúk, vlastných panelov s nástrojmi a vlastných kontextových ponúk (kliknutím pravým tlačidlom myši). Počnúc Excelom 2007 je objekt CommandBar v dosť zvláštnej pozícii. Ak napíšete kód na prispôsobenie ponuky alebo panela s nástrojmi, Excel zachytí tento kód a ignoruje mnohé z vašich príkazov.

Namiesto zobrazenia premysleného vylepšenia rozhrania Excel 2007 (podobne ako novšie verzie) jednoducho zobrazí vaše prispôsobené ponuky a panely s nástrojmi na univerzálnu kartu s páskou s názvom Doplnky.

Prispôsobenia ponuky a panela s nástrojmi skončia v skupine Doplnky → Príkazy ponuky alebo Doplnky → Vlastné panely s nástrojmi. Ale prispôsobenie kontextových ponúk (ktoré tiež používa objekt CommandBar) stále funguje tak, ako to vždy fungovalo – no, tak nejako.

Spodná čiara? Objekt CommandBar už nie je veľmi užitočný, ale zostáva jediným spôsobom, ako prispôsobiť kontextové ponuky.

Pridanie novej položky do ponuky skratiek bunky

Nižšie nájdete vzorový kód, ktorý pridá novú položku do kontextovej ponuky, ktorá sa zobrazí po kliknutí pravým tlačidlom myši na bunku. Mali by ste byť schopní prispôsobiť tieto príklady vašim potrebám.

Pomôcku Change Case môžete trochu vylepšiť tak, že ju sprístupníte z ponuky skratiek bunky.

Procedúra AddToShortcut pridá novú položku ponuky do ponuky skratky bunky. Môžete ho prispôsobiť tak, aby ukazoval na vaše vlastné makrá, zmenou vlastností Caption a OnAction objektu s názvom NewControl.

Sub AddToShortCut()
  Dim Bar Ako CommandBar
  Stlmiť NewControl ako tlačidlo CommandBarButton
  DeleteFromShortcut
  Nastaviť pruh = Application.CommandBars(“Cell”)
  Set NewControl = Bar.Controls.Add _
     (Typ:=msoControlButton, ID:=1, _
     dočasný:=Pravda)
  S NewControl
    .Caption = „&Zmeniť veľkosť písmen“
    .OnAction = “ChangeCase”
    .Style = msoButtonIconAndCaption
  Koniec s
End Sub

Keď upravíte ponuku skratiek, táto úprava zostane v platnosti, kým nereštartujete Excel. Inými slovami, upravené kontextové ponuky sa samé neresetujú, keď zatvoríte zošit, ktorý obsahuje kód VBA. Preto, ak napíšete kód na úpravu ponuky skratiek, takmer vždy napíšete kód, ktorý zvráti účinok vašej úpravy.

Procedúra DeleteFromShortcut odstráni novú položku ponuky z ponuky skratky bunky:

Sub DeleteFromShortcut()
  Pri chybe Pokračujte ďalej
  Application.CommandBars(“Cell”).Ovládacie prvky _
    („&Zmeniť prípad“). Odstrániť
End Sub

Toto ukazuje, ako sa nová položka ponuky zobrazí po kliknutí pravým tlačidlom myši na bunku.

Ako prispôsobiť ponuky skratiek Excel 2016 vo VBA

Ponuka skratky bunky zobrazujúca vlastnú položku ponuky: Zmeniť veľkosť písmen.

Prvý skutočný príkaz po deklarácii niekoľkých premenných volá procedúru DeleteFromShortcut. Toto vyhlásenie zaisťuje, že sa v ponuke skratiek Bunka zobrazí iba jedna položka ponuky Change Case. Skúste tento riadok zakomentovať (na začiatok riadku vložte apostrof) a niekoľkokrát spustite postup – ale nenechajte sa uniesť!

Kliknite pravým tlačidlom myši na bunku a uvidíte viacero výskytov položky ponuky Zmeniť veľkosť písmen. Zbavte sa všetkých položiek spustením DeleteFromShortcut viackrát (raz pre každú ďalšiu položku ponuky).

Nakoniec potrebujete spôsob, ako pridať položku ponuky skratiek pri otvorení zošita a odstrániť položku ponuky pri zatvorení zošita. Je to jednoduché. Stačí pridať tieto dve procedúry udalostí do modulu kódu ThisWorkbook:

Private Sub Workbook_Open()
Zavolajte AddToShortCut
End Sub
Súkromný podriadený zošit_pred zatvorením (zrušiť ako boolovský)
Zavolajte DeleteFromShortcut
End Sub

Procedúra Workbook_Open sa spustí pri otvorení zošita a procedúra Workbook_BeforeClose sa spustí pred zatvorením zošita. Presne to, čo lekár nariadil.

Čo sa líši v Exceli 2013 a Exceli 2016?

Ak ste používali VBA na prácu s ponukami skratiek v Exceli 2007 alebo staršom, musíte si uvedomiť významnú zmenu.

Ak v minulosti váš kód upravil ponuku skratiek, táto úprava bola účinná pre všetky zošity. Ak ste napríklad pridali novú položku do ponuky po kliknutí pravým tlačidlom myši na bunku, táto nová položka sa zobrazí po kliknutí pravým tlačidlom myši na bunku v ľubovoľnom zošite (a v ďalších zošitoch, ktoré otvoríte neskôr). Inými slovami, na aplikačnej úrovni boli vykonané zmeny v ponuke skratiek .

Excel 2013 a Excel 2016 používajú jediné rozhranie dokumentu, ktoré ovplyvňuje kontextové ponuky. Zmeny, ktoré vykonáte v ponukách skratiek, ovplyvnia iba aktívne okno zošita. Keď spustíte kód, ktorý upraví ponuku skratiek, ponuka skratiek pre iné okná ako aktívne okno sa nezmení. Toto je radikálny odklon od toho, ako veci fungovali.

Ďalší zvrat: Ak používateľ otvorí zošit (alebo vytvorí nový zošit), keď sa v aktívnom okne zobrazí upravená ponuka skratiek, nový zošit zobrazí aj upravenú ponuku skratiek. Inými slovami, nové okná zobrazujú rovnaké kontextové ponuky ako okno, ktoré bolo aktívne pri otvorení nových okien.

Zrátané a podčiarknuté: Ak ste v minulosti otvorili zošit alebo doplnok, ktorý upravoval ponuky skratiek, mohli ste si byť istí, že upravené ponuky skratiek budú dostupné vo všetkých zošitoch. Túto istotu už nemáte.

Vytvorte si vlastné kontextové ponuky v Accesse 2007

Okno návrhu makra sa v Accesse 2007 líši v porovnaní s novšími verziami, takže ak používate Access 2007, rozbaľte nasledujúce sekcie a postupujte podľa nich.

Krok 1 pre Access 2007: Vytvorte skupinu makier, ktorá obsahuje príkazy ponuky

V tomto kroku vytvoríte skupinu makier, z ktorých každé makro bude samostatným príkazom v ponuke skratiek.

Čo je makroskupina?

Skupina makier je jeden objekt makier, ktorý obsahuje dve alebo viac nezávislých makier. Jednotlivé makrá sa identifikujú zadaním názvu každého makra do stĺpca Názvy makier. Na nasledujúcom obrázku  je makro3  skupina makier. NotFoundMsg  a  FoundMsg  sú samostatné makrá v rámci skupiny, pričom každé makro pozostáva z dvoch akcií makra.

Príklad skupiny makier

Poznámka:  Stĺpec  Názov makra  je predvolene skrytý. Ak chcete zobraziť  stĺpec Názov makra  , na  karte Návrh  v  skupine Zobraziť/skryť  kliknite na  položku Názvy makier .

  1. Na  karte Vytvoriť  v  skupine Iné  kliknite na  položku Makro . Ak tento príkaz nie je k dispozícii, kliknite na šípku pod  tlačidlom Modul  alebo  Modul triedy  a potom kliknite na  položku Makro .

  2. Na  karte Návrh  v   skupine  Zobraziť/skryť kliknutím na položku Názvy makier  zobrazíte  stĺpec Názov makra  .

  3. Pre každý príkaz, ktorý chcete mať vo svojej vlastnej ponuke skratiek:

    • Do  stĺpca Názov makra  zadajte text, ktorý chcete zobraziť v ponuke skratiek (napríklad „Vytlačiť zostavu“ alebo „Uložiť“).

      Poznámka:  Ak chcete vytvoriť prístupový kľúč, aby ste mohli použiť klávesnicu na výber príkazu, zadajte ampersand (&) pred písmeno, ktoré má byť prístupovým kľúčom v názve príkazu (napríklad „&Uložiť“). Toto písmeno bude v ponuke podčiarknuté.
    • V  stĺpci Akcia  vyberte prvú akciu, ktorú chcete vykonať po kliknutí na príkaz v kontextovej ponuke.

    • Ak existuje viac akcií, ktoré chcete vykonať, keď vyberiete tento príkaz, pridajte ich do nasledujúcich riadkov. Pre každú nasledujúcu akciu ponechajte  bunku Názov makra  prázdnu.

      Poznámka:  Ak chcete vytvoriť čiaru medzi dvoma príkazmi ponuky, napíšte spojovník (-) do  stĺpca Názov makra  medzi príslušnými príkazmi ponuky.
  4. Uložte a pomenujte makro, napríklad   mcrShortcutMenuCommands .

Nasledujúci obrázok zobrazuje príklad skupiny makier pre vlastnú ponuku alebo ponuku skratiek.

Skupina makier ponuky v návrhovom zobrazení

Krok 2 pre Access 2007: Vytvorte makro, ktoré vytvorí ponuku

Tento krok sa môže zdať nadbytočný, ale ak chcete vytvoriť ponuku skratiek zo skupiny makier, ktorú ste vytvorili v kroku 1, musíte vytvoriť druhé makro, ktoré obsahuje  akciu makra AddMenu  . Toto makro sa niekedy nazýva „makro ponuky“.

  1. Na  karte Vytvoriť  v  skupine Iné  kliknite na  položku Makro . Ak tento príkaz nie je k dispozícii, kliknite na šípku pod  tlačidlom Modul  alebo  Modul triedy  a potom kliknite na  položku Makro .

  2. V prvom riadku makra vyberte  AddMenu  v  zozname Action  .

  3. V  časti Argumenty akcie zadajte do poľa  Názov ponuky  názov ponuky (napríklad „Príkazy zostavy“). Tento argument sa nevyžaduje, ale odporúča sa, ak v kroku 3 plánujete pridať ponuku na kartu Pás s nástrojmi (napríklad kartu Doplnky  formulára  alebo zostavy). Ak sa ponuka pridá ako skratka v kroku 3,  argument Názov ponuky  sa ignoruje.

  4. Do  poľa Názov makra ponuky  zadajte názov makra, ktoré ste vytvorili v kroku 1.

  5. Uložte a pomenujte makro, napríklad  mcrAddShortcutMenu .

Nasledujúca ilustrácia zobrazuje príklad makra ponuky, ktoré vytvára ponuku, ktorú sme navrhli v kroku 1.

Makro ponuky v zobrazení návrhu

Krok 3 pre Access 2007: Pripojte ponuku k ovládaciemu prvku, formuláru, zostave alebo databáze

V závislosti od toho, kde sa má ponuka zobraziť, použite jeden alebo viacero z nasledujúcich postupov.

  • Pridajte ponuku na kartu Doplnky formulára alebo zostavy

    Tento postup použite, ak chcete, aby sa ponuka zobrazila na  karte Doplnky  pre konkrétny formulár alebo zostavu, ako je znázornené na nasledujúcom obrázku:

    Karta Doplnky obsahujúca vlastnú ponuku

    1. Na navigačnej table kliknite pravým tlačidlom myši na formulár alebo zostavu, kde sa má zobraziť ponuka, a potom kliknite na položku  Návrhové zobrazenie .

    2. Na  karte Návrh  v  skupine Zobraziť/skryť  kliknite na  položku Hárok vlastností .

    3. Vyberte celý objekt výberom položky  Formulár  alebo  Správa  zo zoznamu v hornej časti pracovnej tably Hárok vlastností.

    4. Na   karte  Iné na hárku vlastností zadajte do poľa vlastností ponuky  skratiek názov makra, ktoré ste vytvorili v kroku 2 (v tomto príklade „mcrAddShortcutMenu“).

      Pri ďalšom otvorení formulára alebo zostavy sa   na páse s nástrojmi zobrazí karta Doplnky . Kliknutím na kartu zobrazíte ponuku.

      Ďalšie informácie o technikách prispôsobenia pása s nástrojmi, ako je pridávanie vlastných kariet alebo skrytie predvolených kariet, nájdete v článku  Vytvorenie vlastného pásu s nástrojmi v Accesse .

      Pás s nástrojmi je súčasťou používateľského rozhrania Microsoft Office Fluent.

  • Pridajte ponuku ako ponuku skratiek pre formulár, zostavu alebo ovládací prvok

    Tento postup použite, ak chcete, aby sa ponuka zobrazila po kliknutí pravým tlačidlom myši na konkrétny formulár, zostavu alebo ovládací prvok, ako je znázornené na nasledujúcom obrázku:

    Jednoduché menu skratiek

    1. Na navigačnej table kliknite pravým tlačidlom myši na formulár alebo zostavu, kde sa má zobraziť kontextová ponuka, a potom kliknite na položku  Návrhové zobrazenie .

    2. Na  karte Návrh  v  skupine Zobraziť/skryť  kliknite na  položku Hárok vlastností .

    3. Vyberte ovládací prvok alebo objekt, ku ktorému chcete pripojiť ponuku skratiek.

      Poznámka:  Ak chcete vybrať celý objekt, vyberte  Formulár  alebo  Správa  zo zoznamu v hornej časti pracovnej tably Hárok vlastností.

    4. Na  karte Iné  na hárku vlastností  zadajte do poľa vlastností Panela  s odkazmi názov makra, ktoré ste vytvorili v kroku 2 (v tomto príklade „mcrAddShortcutMenu“).

  • Pridajte ponuku ako globálnu ponuku skratiek

    Tento postup nahradí všetky predvolené ponuky skratiek v aktuálnej databáze. Vlastné kontextové ponuky, ktoré ste pripojili ku konkrétnym formulárom, zostavám alebo ovládacím prvkom, nie sú ovplyvnené.

    1. Kliknite na  tlačidlo Microsoft Office  a potom kliknite na  položku Možnosti prístupu .

    2. V   dialógovom okne  Možnosti programu Access kliknite na položku Aktuálna databáza .

    3. V časti  Možnosti pásu a panela s nástrojmi zadajte do poľa   Panel s odkazmi názov makra, ktoré ste vytvorili v kroku 2 (v tomto príklade „mcrAddShortcutMenu“).

  • Vlastné ponuky skratiek nahrádzajú predvolené ponuky skratiek pre objekty, ku ktorým sú pripojené. Ak chcete zachovať určité príkazy programu Access na použitie v týchto ponukách, použite  akciu Spustiť  príkaz na vloženie príkazov do skupín makier pre ponuky, v ktorých ich chcete mať.

  • Vlastná kontextová ponuka, ktorá je pripojená k ovládaciemu prvku, nahrádza všetky ostatné vlastné kontextové ponuky, ktoré sú definované v databáze. Vlastná kontextová ponuka, ktorá je pripojená k formuláru alebo zostave, nahrádza vlastnú globálnu kontextovú ponuku.

  • Keď zadáte makro ponuky pre formulár alebo zostavu alebo pre databázu, Access spustí toto makro ponuky vždy, keď sa otvorí formulár, zostava alebo databáza. Ak vykonáte zmeny v makre ponuky alebo skupine makier, ktorá definuje jeho príkazy, keď je formulár, zostava alebo databáza otvorený, musíte formulár, zostavu alebo databázu zavrieť a znova ich otvoriť, aby ste videli zmeny.

  • Ak chcete vytvoriť podponuku, podľa kroku 1 vytvorte samostatnú skupinu makier, ktorá obsahuje iba príkazy podponuky. Potom znova postupujte podľa kroku 1 a definujte príkazy pre ponuku vyššej úrovne. Pridajte podponuku ako položku do skupiny makier vyššej úrovne pomocou  akcie makra AddMenu  . Nasledujúci obrázok zobrazuje skupinu makier pre ponuku, ktorá obsahuje podponuku, a potom zobrazuje výslednú ponuku skratiek. Tretí riadok v skupine makier vytvára  podponuku Exportovať do...  ( mcrSubMenu ).

    Ponuka skratiek, ktorá obsahuje podponuku

    Pomocou akcií AddMenu  v skupinách makier pre každú úroveň ponuky môžete vytvoriť viacero úrovní podponuky  . Nezabudnite zadať hodnotu pre  argument Názov ponuky  pre každú  akciu AddMenu  , inak sa podponuka zobrazí ako prázdny riadok v ponuke vyššej úrovne.

  • Podmienky makra sú podporované iba v makre ponuky najvyššej úrovne. Inými slovami, môžete použiť podmienku v makre ponuky na určenie toho, či sa zobrazí konkrétna ponuka alebo kontextová ponuka, ale iba pre ponuky na najvyššej úrovni. Podmienky nemôžete použiť na zobrazenie alebo skrytie príkazov alebo podmenu v ponukách. Môžete tiež použiť podmienku na skrytie alebo zobrazenie vlastnej ponuky skratiek alebo globálnej ponuky skratiek.

  • Makro ponuky, ktoré vytvoríte v kroku 2, môže byť voliteľne súčasťou skupiny makier. Napríklad, ak máte niekoľko ponúk skratiek pre rôzne objekty alebo ovládacie prvky, môžete vytvoriť jeden objekt makra, ktorý obsahuje všetky potrebné makrá ponuky. Nezabudnite zobraziť  stĺpec Názov makra  a zadajte jedinečný názov pre každé makro. V kroku 3 použite na označenie makra nasledujúci zápis:  názov_skupiny makra.názov_makra . Napríklad  mcrAddShortcutMenus.AddMenu2 .

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.