Страницы: 1
RSS
Запуск макроса сочетанием клавиш., Работает ли на любом компе?
 
Всем доброго здоровья!
Возник у меня такой. казалось бы простенький вопрос, но проверить сам не могу.
Создаю макрос с запуском по сочетанию клавиш. Будет ли работать это сочетаний на любом другом компе. или  надо отслеживать нажатие клавиш?
 
Михаил Витальевич С., здравствуйте
Цитата
Михаил Витальевич С. написал:
Будет ли работать это сочетаний на любом другом компе
давайте узнаем) в файле два макроса. один вызывается сочетанием Ctrl+t, другой  Ctrl+r
 
artyrH, Спасибо, оба работают.
И чё я сам не догадался файл выложить?
 
Цитата
Михаил Витальевич С. написал: или  надо отслеживать нажатие клавиш?
Можно отслеживать раскладку клавиатуры в момент нажатия сочетания клавиш.А то вроде как нажимаешь Ctrl+t, а на самом деле это Ctrl+е (русская 'е') и вместо желтого квадрата предлагают создать Умную таблицу ;)  
Согласие есть продукт при полном непротивлении сторон
 
Цитата
Михаил Витальевич С. написал:
Будет ли работать это сочетаний на любом другом компе. или  надо отслеживать нажатие клавиш?
И тут на поле выходит что-либо резидентное, настроенное на тоже сочетание и перехватывающее его до приложения excel. Ответ - гарантировать 100% что на любом другом ПК будет работать невозможно.
Цитата
Sanja написал:
нажимаешь Ctrl+t, а на самом деле это Ctrl+е (русская 'е')
это казалось бы решается просто, назначением горячих в двух раскладках на оду процедуру, но и это разбивается о возможность присутствия других языков и естественно другой раскладки.
По вопросам из тем форума, личку не читаю.
 
Вот для такого я использую программное назначение сочетания клавиш. Оно работает всегда независимо от раскладки.
Код
Sub Macros1()
MsgBox "Привет человек"
End Sub

Код
Sub Naznachenie_1() 'Назначение макроса Macros1 на сочетание Ctrl+A
Application.OnKey "^{a}", "Macros1"
End Sub

Код
Sub Naznachenie_2() 'Блокировка сочетания Ctrl+A
Application.OnKey "^{a}", ""
End Sub

Код
Sub Naznachenie_3() 'Возвращение в исходное состояние горячих кнопок
Application.OnKey "^{a}"
End Sub

Запихиваете на открытие книги и автоматом назначается.
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
Alemox, все три макроса на открытие книги? в том виде, как они счас есть?
 
Нет. Вот этот назначает клавиши. Его можно сунуть в событие открытия книги. Комбинацию кнопок сами задаёте.
Код
Application.OnKey "^{a}", "Macros1"

Этот макрос возвращает клавиши в исходное состояние при необходимости, если нужно убрать комбинацию. Его можно использовать когда например переключаетесь между книгами в событие деактивации книги.
Код
Application.OnKey "^{a}"

Ну и если есть в событии деактивации, то в событии активации книги можно опять поставить назначение как в предыдущем. Но это по желанию, если хотите использовать комбинацию только в определённом файле.
А вот этой комбинацией можно заблокировать горячие кнопки, которые стандартные например Ctrl+A
Код
Application.OnKey "^{a}", ""

Справка по кнопкам
Изменено: Alemox - 23.05.2019 14:38:11
Мастерство программиста не в том, чтобы писать программы, работающие без ошибок.
А в том, чтобы писать программы, работающие при любом количестве ошибок.
 
Alemox, спасибо.
Также спасибо и всем участникам беседы.
Страницы: 1
Наверх