Stránka 1 z 1

Excel 2010 - změna klávesové zkratky

Napsal: 26 srp 2014 10:48
od antoninstrnad
Dobrý den,
potřeboval bych poradit, jestli jde v Excelu 2010 měnit klávesové kratky - abych si je mohl udělat stejné jako v Byznysu.
Konkrétně CTRL+D nahradit F12

Re: Excel 2010 - změna klávesové zkratky

Napsal: 26 srp 2014 14:23
od guest
Úvodem...

Řekněme, že víte, do čeho se pouštíte.

Pokud si představujete, že si někde v Excelu otevřete nastavení a v seznamu zkratek provedete změny, tak na to zapomeňte. Přemapování klávesových zkratek můžete provádět prostřednictvím VBA.

a) Makrem a k němu přiřazenou klávesovou zkratkou (z listu ALT+F8, tlačítko Možnosti)
b) Zpracováním události OnKey při otevírání a zavírání sešitu.

V obou případech by pak přidružené makro obsahovalo instrukci SendKeys "{F12}", což ovšem nebude fungovat. F12 je běžná klávesová zkratka pro Uložit jako. Bohužel pod VBA je nejspíš v programu bug, protože se spouští dialog Otevřít. Tudíž na SendKeys můžete zapomenout a muselo by se to nasimulovat přes kolekci Dialogs.

Re: Excel 2010 - změna klávesové zkratky

Napsal: 27 srp 2014 10:20
od antoninstrnad
Popravdě nevím do čeho se pouštím.
Dělám s Excelem a Byznysem a každý program má jiné klávesové zkratky. To znamená, že musím pořád myslet na to, ve kterém programu jsem a které zkratky zrovna platí. V Excelu často potřebuji CTRL+D a to se v Byznyse dělá F12.
Dá se s tím dělat, ale přesto jsem se začal zajímat o nějaké řešení, které by vše zjednodušilo, alespoň u této zkratky. (Uplatnit rčení, že počítače za nás řeší problémy - hlavně ty, které nám samy způsobily.)
Ptal jsem se na Byznys a tam jsou zkratky asi napevno. V Excelu jsem se trochu navnadil možnostmi u klávesy ENTER a opravdu si myslel, že to bude snažší. Vypadá to že ne.
Dík za každý nápad.

Re: Excel 2010 - změna klávesové zkratky  Vyřešeno

Napsal: 27 srp 2014 16:15
od cmuch
Do modulu ThisWorkBook v excelu (Alt+F11) nakopírovat tuto

Kód: Vybrat vše

Private Sub Workbook_BeforeClose(Cancel As Boolean)

  'reset vypnuti kontroly stisku klaves (F12)
  Application.OnKey "{F12}"
End Sub

Private Sub Workbook_Open()

  'zakazani stisku klaves (F12)
  Application.OnKey "{F12}", "ZmenaKlZkratky"
End Sub


Do obyčejného modulu (přidat lze přes pravé tl.myši na modul ThisWorkbook) vložit zase tuto

Kód: Vybrat vše

Private Sub ZmenaKlZkratky()
  Application.SendKeys ("^d")
End Sub