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

Вход

Регистрация

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

 

= Мир MS Excel/Отслеживание нажатий в ribbon - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Отслеживание нажатий в ribbon
SkyPro Дата: Понедельник, 08.12.2014, 12:36 | Сообщение № 1
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
Друзья, добрый день!
Подскажите, пожалуйста, как можно отследить нажатия на ленте? Хочу собирать статистику по использованию всех нажатых кнопок.


skypro1111@gmail.com
 
Ответить
СообщениеДрузья, добрый день!
Подскажите, пожалуйста, как можно отследить нажатия на ленте? Хочу собирать статистику по использованию всех нажатых кнопок.

Автор - SkyPro
Дата добавления - 08.12.2014 в 12:36
Саня Дата: Понедельник, 08.12.2014, 21:25 | Сообщение № 2
Группа: Друзья
Ранг: Ветеран
Сообщений: 1068
Репутация: 560 ±
Замечаний: 0% ±

XL 2016
в надстройке в xml-потрохах пишешь:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" >
   <commands>
   <command idMso="Copy" onAction="MyCopy"/>  
   <command idMso="ApplicationOptionsDialog" enabled="false"/>  
  </commands>  
</customUI>

[vba]
Код
Sub MyCopy(control As IRibbonControl, ByRef cancelDefault)
      If Лист1.CheckBox1.Value Then    'флажок поставлен - показываем сообщение
          cancelDefault = True
          MsgBox "Копировать нельзя!!!"
      Else    'иначе команда по умолчанию
          cancelDefault = False
      End If      
End Sub
[/vba]

и это только на одну команду на ленте: Копировать
"Ctrl+C" она не блокирует - пропишешь OnKey при загрузке/открытии
К сообщению приложен файл: 1286384.xlsm (18.9 Kb)
 
Ответить
Сообщениев надстройке в xml-потрохах пишешь:
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<customUI xmlns="http://schemas.microsoft.com/office/2009/07/customui" >
   <commands>
   <command idMso="Copy" onAction="MyCopy"/>  
   <command idMso="ApplicationOptionsDialog" enabled="false"/>  
  </commands>  
</customUI>

[vba]
Код
Sub MyCopy(control As IRibbonControl, ByRef cancelDefault)
      If Лист1.CheckBox1.Value Then    'флажок поставлен - показываем сообщение
          cancelDefault = True
          MsgBox "Копировать нельзя!!!"
      Else    'иначе команда по умолчанию
          cancelDefault = False
      End If      
End Sub
[/vba]

и это только на одну команду на ленте: Копировать
"Ctrl+C" она не блокирует - пропишешь OnKey при загрузке/открытии

Автор - Саня
Дата добавления - 08.12.2014 в 21:25
SkyPro Дата: Вторник, 09.12.2014, 00:40 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
Саня, Отличный пример!
Благодарю.

[p.s.]Нашел список всех контролов.
К сообщению приложен файл: ExcelControls.xlsb (77.3 Kb)


skypro1111@gmail.com
 
Ответить
СообщениеСаня, Отличный пример!
Благодарю.

[p.s.]Нашел список всех контролов.

Автор - SkyPro
Дата добавления - 09.12.2014 в 00:40
  • Страница 1 из 1
  • 1
Поиск:

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