Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Какие клавиши нажаты (не для слежки) - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Какие клавиши нажаты (не для слежки)
SergeyKorotun Дата: Пятница, 25.07.2014, 11:47 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 301
Репутация: 15 ±
Замечаний: 0% ±

Excel 2007
Хотел тоже задать такой вопрос, но опередили, и тему закрыли.
Я назначил первым четырем макросам горячие клавиши Ctrl+A, Ctrl+D, Ctrl+W, Ctrl+S соответственно, и с них вызываю основную процедуру, передавая ей в качестве параметра условный код нажатой клавиши.
А как перехватить нажатие стрелок управления курсором?
[vba]
Код
Sub left()
    Call hod("left")
End Sub

Sub right()
    Call hod("right")
End Sub

Sub up()
    Call hod("up")
End Sub

Sub down()
    Call hod("down")
End Sub

Sub hod(route)
    MsgBox route
End Sub
[/vba]
 
Ответить
СообщениеХотел тоже задать такой вопрос, но опередили, и тему закрыли.
Я назначил первым четырем макросам горячие клавиши Ctrl+A, Ctrl+D, Ctrl+W, Ctrl+S соответственно, и с них вызываю основную процедуру, передавая ей в качестве параметра условный код нажатой клавиши.
А как перехватить нажатие стрелок управления курсором?
[vba]
Код
Sub left()
    Call hod("left")
End Sub

Sub right()
    Call hod("right")
End Sub

Sub up()
    Call hod("up")
End Sub

Sub down()
    Call hod("down")
End Sub

Sub hod(route)
    MsgBox route
End Sub
[/vba]

Автор - SergeyKorotun
Дата добавления - 25.07.2014 в 11:47
Hugo Дата: Пятница, 25.07.2014, 12:12 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3854
Репутация: 814 ±
Замечаний: 0% ±

365
Не туда пошли. Думаю нужно как то так:
[vba]
Код
Sub tt()
     Application.OnKey "{DOWN}", "msgdwn"
     Application.OnKey "{UP}", "msgup"
End Sub

Sub msgdwn()
     MsgBox "down"
End Sub

Sub msgup()
     MsgBox "up"
End Sub
[/vba]


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеНе туда пошли. Думаю нужно как то так:
[vba]
Код
Sub tt()
     Application.OnKey "{DOWN}", "msgdwn"
     Application.OnKey "{UP}", "msgup"
End Sub

Sub msgdwn()
     MsgBox "down"
End Sub

Sub msgup()
     MsgBox "up"
End Sub
[/vba]

Автор - Hugo
Дата добавления - 25.07.2014 в 12:12
SergeyKorotun Дата: Пятница, 25.07.2014, 12:43 | Сообщение № 3
Группа: Проверенные
Ранг: Обитатель
Сообщений: 301
Репутация: 15 ±
Замечаний: 0% ±

Excel 2007
А куда ее надо вставить (или как ее обозвать), чтобы при загрузке екселя она автоматически запустилась.
И ее как остановить? [vba]
Код
Application.OnKey "{DOWN}",""
[/vba] Так?
 
Ответить
СообщениеА куда ее надо вставить (или как ее обозвать), чтобы при загрузке екселя она автоматически запустилась.
И ее как остановить? [vba]
Код
Application.OnKey "{DOWN}",""
[/vba] Так?

Автор - SergeyKorotun
Дата добавления - 25.07.2014 в 12:43
nilem Дата: Пятница, 25.07.2014, 15:22 | Сообщение № 4
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
нажатие кнопки "стрелка вниз" просто игнорируется:
[vba]
Код
Application.OnKey "{DOWN}",""
[/vba]
а чтобы отменить OnKey (вернуть обычную функциональность):
[vba]
Код
Application.OnKey "{DOWN}"
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениенажатие кнопки "стрелка вниз" просто игнорируется:
[vba]
Код
Application.OnKey "{DOWN}",""
[/vba]
а чтобы отменить OnKey (вернуть обычную функциональность):
[vba]
Код
Application.OnKey "{DOWN}"
[/vba]

Автор - nilem
Дата добавления - 25.07.2014 в 15:22
SergeyKorotun Дата: Пятница, 25.07.2014, 15:38 | Сообщение № 5
Группа: Проверенные
Ранг: Обитатель
Сообщений: 301
Репутация: 15 ±
Замечаний: 0% ±

Excel 2007
А как запустить Sub tt() автоматически в момент открытия книги?
 
Ответить
СообщениеА как запустить Sub tt() автоматически в момент открытия книги?

Автор - SergeyKorotun
Дата добавления - 25.07.2014 в 15:38
nilem Дата: Пятница, 25.07.2014, 15:45 | Сообщение № 6
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
в модуль "ЭтаКнига"
[vba]
Код
Private Sub Workbook_Open()
Application.OnKey "{DOWN}", "msgdwn"
Application.OnKey "{UP}", "msgup"
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey "{DOWN}"
Application.OnKey "{UP}"
End Sub
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениев модуль "ЭтаКнига"
[vba]
Код
Private Sub Workbook_Open()
Application.OnKey "{DOWN}", "msgdwn"
Application.OnKey "{UP}", "msgup"
End Sub

Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.OnKey "{DOWN}"
Application.OnKey "{UP}"
End Sub
[/vba]

Автор - nilem
Дата добавления - 25.07.2014 в 15:45
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2025 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!