Stránka 1 z 1

Nefunguje onkey

Napsal: 04 kvě 2015 16:22
od atari
Mám níže uvedené makro (viz příloha v EXCEL 2010), ale při stisku klávesy "Esc" nefunguje. Zkoušel jsem i jiné klávesy a nefungují. Poradí někdo v čem je problém?

Kód: Vybrat vše

Sub Stiskklavesy()
    Application.OnKey "{ESC}", "Procedura"
End Sub

Sub Procedura()
    MsgBox "Klávesa byla stisknuta."
End Sub

Re: Nefunguje onkey

Napsal: 05 kvě 2015 06:51
od eLCHa
Člověče, máte pořád zvláštní tendenci vybírat si klávesy, které mají nějaké obecné použití... ;)

U mně to funguje.
Jen pro jistotu technická - aby to fungovalo, musíte nejdříve nechat proběhnout proceduru Stiskklavesy, pak se přepnete do listu a po stisku ESC se objeví MsgBox.

Re: Nefunguje onkey

Napsal: 05 kvě 2015 09:16
od atari
Jasně, červenám se... (ale není to na mě vidět :lol: )
Tak jsem proběhnutí kódu vložil do "ThisWorkbook" (viz níže), ale při otevření sešitu mě to hlásí chybu " Run-time error '1004' ". Když však proběhnutí kódu spustím ručně v modulu, tak to funguje bez chyby. Dělám něco špatně?

Klávesu "ESC" jsem zvyklý používat z účetnictví v PC FAND na zavírání nabídek (formulářú), tak si to chci v Excelu udělat stejně. (Vyrábím peněžní deník ve kterém při práci nebude potřeba používat myš, vše se bude ovládat přes klávesnici, to je nejrychlejší a nejpohodlnější práce.)

Kód: Vybrat vše

Private Sub Workbook_Activate()
    Application.OnKey "ESC", "Procedura"
End Sub

Re: Nefunguje onkey  Vyřešeno

Napsal: 05 kvě 2015 09:47
od eLCHa
Tipl bych, že chybí složené závorky - přílohu jsem nestahoval (nezapomeňte pak deaktivovat)

Kód: Vybrat vše

Private Sub Workbook_Activate()
    Application.OnKey "{ESC}", "Procedura"
End Sub
Private Sub Workbook_Deactivate()
    Application.OnKey "{ESC}"
End Sub

Re: Nefunguje onkey

Napsal: 06 kvě 2015 10:14
od atari
No jasně byly to chybějící závorky. A deaktivaci tam už mám, díky za upozornění. (V jednom kódu je napíšu a ve druhém je nenapíšu, a nevidím… :-(, asi si dám pauzu)