Удалил меню - а как его востановить не знаю
От: PavelT100 Россия  
Дата: 28.06.02 09:53
Оценка:
MS Office 2000 Premium. Excel. В ходе своих экспериментов случайно удалил пункт меню "Help", хорошо, что до других дело не дошло, вот такой строкой:

Application.CommandBars("Worksheet Menu Bar").Controls(12).Delete

Как его востановить, подскажите, и вообще что произошло? Я хотел удалить меню только для
данной книги и для данного запуска, а теперь даже после удаления и новой установки всего MS Office
это меню не возвращается.

Попутно вопрос на ту же тему, скопировал код из хелпа VBA :
Set mybar = CommandBars _
.Add(Name:="Custom", Position:=msoBarTop, _
Temporary:=True)
With mybar
.Controls.Add Type:=msoControlButton, Id:= _
CommandBars("Edit").Controls("Paste").ID
.Visible = True
End With

Запускаю, не работает.

Run-time error'91'

Object variable or With block variable not set
Re: Удалил меню - а как его востановить не знаю
От: Вдовинов А.И.  
Дата: 28.06.02 10:42
Оценка: 4 (1)
Здравствуйте PavelT100, Вы писали:

PT> MS Office 2000 Premium. Excel. В ходе своих экспериментов случайно удалил пункт меню "Help", хорошо, что до других дело не дошло, вот такой строкой:


PT>Application.CommandBars("Worksheet Menu Bar").Controls(12).Delete


PT>Как его востановить, подскажите, и вообще что произошло? Я хотел удалить меню только для

PT>данной книги и для данного запуска, а теперь даже после удаления и новой установки всего MS Office
PT>это меню не возвращается.

PT>Попутно вопрос на ту же тему, скопировал код из хелпа VBA :

PT>Set mybar = CommandBars _
PT> .Add(Name:="Custom", Position:=msoBarTop, _
PT> Temporary:=True)
PT>With mybar
PT> .Controls.Add Type:=msoControlButton, Id:= _
PT> CommandBars("Edit").Controls("Paste").ID
PT> .Visible = True
PT>End With

PT>Запускаю, не работает.


PT>Run-time error'91'


PT>Object variable or With block variable not set


Чтобы восстановить меню, нужно выполнить:

  Application.CommandBars("Worksheet Menu Bar").Reset

Всё вернется в исходное состояние.

А для того чтобы изменения в меню происходили только для данной книги, нужно поставить:
  Application.CommandBars("Worksheet Menu Bar").Controls(12).Delete True
  '[Temporary]=True


На второй вопрос:
Нужно объявить переменную mybar.

 Dim mybar as CommandBar

Re[2]: Удалил меню - а как его востановить не знаю
От: PavelT100 Россия  
Дата: 28.06.02 11:28
Оценка:
Здравствуйте Вдовинов А.И., Вы писали:

ВА>На второй вопрос:

ВА>Нужно объявить переменную mybar.

ВА>
ВА> Dim mybar as CommandBar
ВА>

ВА>
Объявил, запускаю, не работает. Сейчас моя процедура выглядит вот так.


Private Sub Ex3()
    Dim mybar As CommandBar
    
    Set mybar = CommandBars _
        .Add(Name:="Custom", Position:=msoBarTop, _
        Temporary:=True)
    With mybar
        .Controls.Add Type:=msoControlButton, ID:= _
            CommandBars("Edit").Controls("Paste").ID
        .Visible = True
    End With
End Sub


результат тот же самый.

А про востановление меню — большое спасибо, все востановилось.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.