Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 05.06.2008, 19:46   #1
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию Как клавиши F, назначить макрос?

Как клавиши F1(или другой F), назначить выполнение макроса?
valerij вне форума
Старый 05.06.2008, 23:48   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

кажись, никак. Может поправит кто?
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума
Старый 06.06.2008, 00:23   #3
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
кажись, никак. Может поправит кто?
а вот приспособить, что бы "Run Макрос"??????

Код:
Private Sub Workbook_Activate()
    'Автор нижеприведённого способа передачи аргументов: Helen Toomik
    With Application
         .OnKey Key:="{F1}", Procedure:="'" & Me.CodeName & ".ExecuteKey ""F1""'"
         .OnKey Key:="{F2}", Procedure:="'" & Me.CodeName & ".ExecuteKey ""F2""'"
    End With
End Sub

Последний раз редактировалось valerij; 06.06.2008 в 10:04.
valerij вне форума
Старый 06.06.2008, 05:22   #4
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Вы хотя бы иногда заглядывайте в Help по VBA.
Метод OnKey. Пример:
Код:
Application.OnKey "{F1}", "Macro"
Теперь, после выполнения этой команды, каждый раз, при нажатии клавиши F1 будет запускаться макрос с именем "Macro".
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 06.06.2008, 09:47   #5
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Пример.
Че то всеравно Хелп запускается!
Я хочу этой клавишей запускать Ваш макрос Sum(), причем из любого листа.

Так получилось

Код:
Private Sub Workbook_Activate()
         Application.OnKey "{F1}", "Sum"
End Sub

Последний раз редактировалось valerij; 06.06.2008 в 10:02.
valerij вне форума
Старый 06.06.2008, 10:03   #6
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Если синтаксис правильный, то все должно работать.
Работать до тех пор, пока не закрыть файл. При повторном открытии необходимо вновь выполнить
Код:
Application.OnKey "{F1}", "Sum"
Чем шире угол зрения, тем он тупее.
SAS888 вне форума
Старый 06.06.2008, 10:06   #7
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Лучше это выполнять по событию
Код:
Private Sub Workbook_Open()
    Application.OnKey "{F1}", "Sum"
End Sub
Код должен располагаться в модуле "Эта книга".
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 06.06.2008 в 10:08.
SAS888 вне форума
Старый 06.06.2008, 10:08   #8
valerij
Старожил
 
Аватар для valerij
 
Регистрация: 12.05.2007
Сообщений: 2,339
По умолчанию

Цитата:
Сообщение от SAS888 Посмотреть сообщение
Если синтаксис правильный, то все должно работать.
Кроме как выше вставить куда и как, недодумал и нужно перезапустить файл

Переделал, все ОК!!!

Последний раз редактировалось valerij; 06.06.2008 в 10:12.
valerij вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как в Excele2007 назначить макрос на пункт пользовательского меню Suroejka Microsoft Office Excel 3 28.05.2008 14:02
Клавиши RealSHELS Общие вопросы Delphi 3 27.03.2008 22:32
Клавиши xakkkkker Общие вопросы Delphi 1 23.03.2008 10:45
Назначить макрос Nando Microsoft Office Excel 5 07.01.2008 14:33
Как программно назначить привилегию или писать в реестр через WinApi ? UnD)eaD)Snake Win Api 16 27.09.2007 20:20