Панели инструментов Excel

Программирование на Visual Basic for Applications
bdaa
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 08.12.2004 (Ср) 11:37

Панели инструментов Excel

Сообщение bdaa » 08.12.2004 (Ср) 14:33

Как пользователю запретить отображать стандартные панели инструментов в экселевском файле?

olik111
Обычный пользователь
Обычный пользователь
 
Сообщения: 57
Зарегистрирован: 03.07.2003 (Чт) 3:16

Сообщение olik111 » 09.12.2004 (Чт) 2:33

Private Sub NoMoreCommandBarHere()
'отключаем всё меню
'объявим переменную
Dim CmdBar As CommandBar
For Each CmdBar In CommandBars
If CmdBar.Enabled = True Then
CmdBar.Enabled = False
End If
Next
End Sub

Вернуть все можно заменив в цикле следующие строчки

If CmdBar.Enabled = True Then
CmdBar.Enabled = False
End If

На

If CmdBar.Enabled = False Then
CmdBar.Enabled = True
End If

olik111
Обычный пользователь
Обычный пользователь
 
Сообщения: 57
Зарегистрирован: 03.07.2003 (Чт) 3:16

Сообщение olik111 » 09.12.2004 (Чт) 2:46

об етом я не подумала

bdaa
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 08.12.2004 (Ср) 11:37

Сообщение bdaa » 09.12.2004 (Чт) 10:18

olik111 писал(а):Private Sub NoMoreCommandBarHere()
'отключаем всё меню
'объявим переменную
Dim CmdBar As CommandBar
For Each CmdBar In CommandBars
If CmdBar.Enabled = True Then
CmdBar.Enabled = False
End If
Next
End Sub

Вернуть все можно заменив в цикле следующие строчки

If CmdBar.Enabled = True Then
CmdBar.Enabled = False
End If

На

If CmdBar.Enabled = False Then
CmdBar.Enabled = True
End If


Спасибо, данный вариант меня почти полностью устраивает, дело в том, что я в приложении использую свое меню и свои панели инструментов, которые создаются программным путем и не хочу, чтобы пользователь пользовался чем-либо кроме них. Я делал стандартные панели невидимыми, а недоступными сделать не догадался :( .
А пользователь макросы отключать не будет, иначе у него не будет приложения (да и не сможет).
Почему сказал, что вариант устраивает почти полностью... осталась маленькая проблема, если правой кнопкой щелкнуть на моей панели управления, то остается доступна кнопка "Настройка". А из "Настройки" можно перенести команды на панель управления. Как этого не допустить?

olik111
Обычный пользователь
Обычный пользователь
 
Сообщения: 57
Зарегистрирован: 03.07.2003 (Чт) 3:16

Сообщение olik111 » 09.12.2004 (Чт) 10:27

назначь правой кнопке какое нибудь другое действие

bdaa
Начинающий
Начинающий
 
Сообщения: 14
Зарегистрирован: 08.12.2004 (Ср) 11:37

Сообщение bdaa » 09.12.2004 (Чт) 10:49

olik111 писал(а):назначь правой кнопке какое нибудь другое действие

Тоже интересное предложение... но к сожалению, на панели инструментов, справа от последней кнопки, есть еще "стрелочка вниз", вызывающая меню "Добавить или удалить кнопки" через которое можно попасть в "Настройку".

Правда, проблему добавления кнопки решить удалось:
у моей CommandBar ставлю Protection = msoBarNoCustomize, однако окно "Настройка" все равно можно вызвать, а вот команды из нее перетянуть не удается. Так что осталось избавиться от "Настройки" чисто из эстетических соображений, чтобы пользователя не раздражало


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2

    TopList