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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.01.2012, 11:08   #1
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию Удаление ранее созданого меню

Здравствуйте, ранее создал меню в отдельном файле Ворда, теперь изменить\избавиться не могу, пробую так:
Код:
Sub Удаление_меню()

    Dim strTag As String
    Dim i As Long

    strTag = "MyControl"

    'MsgBox$ Application.CommandBars("Menu Bar").Controls.Count

    On Error Resume Next
    For i = 1 To Application.CommandBars("Menu Bar").Controls.Count
        'удаляет ранее созданные меню
        Application.CommandBars("Menu Bar").FindControl(Type:=msoControlPopup, Tag:=strTag, Recursive:=True).Delete
        Application.CommandBars("Menu Bar").FindControl(Type:=msoControlButton, Tag:=strTag, Recursive:=True).Delete
    Next i
    On Error GoTo 0

End Sub
и какая разница в этих двух строках:
Код:
Application.CommandBars("Menu Bar").FindControl(Type:=msoControlPopup, Tag:=strTag, Recursive:=True).Delete
и
Application.CommandBars("Menu Bar").FindControl(Type:=msoControlButton, Tag:=strTag, Recursive:=True).Delete
Одним словом, знал да забыл как, так как же??
Ципихович Эндрю на форуме Ответить с цитированием
Старый 03.01.2012, 11:16   #2
Sasha_Smirnov
Особый статус
Участник клуба
 
Аватар для Sasha_Smirnov
 
Регистрация: 24.11.2008
Сообщений: 1,535
По умолчанию

Да уж, не вырубишь топором! Ну можно же с документом расправиться!
Sasha_Smirnov вне форума Ответить с цитированием
Старый 03.01.2012, 11:32   #3
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

ну да, следующий вопрос какой будет знаете?
ладно не торопитесь отвечать , думаю, найду всё сам

а вопрос в первом посте в силе и не думаю, что он сложен
Ципихович Эндрю на форуме Ответить с цитированием
Старый 03.01.2012, 15:49   #4
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

блин, не вспоминается, прошу помощи
смысл такой
открываю ранее уже сохранённый документ Ворда в нём в его модуле ThisDocument макросом добавляю меню правее меню Справка. Закрываю этот файл, открываю всё ОК!
Но в других документах это меню тоже есть, такое впечатление как будто я запускал не в ThisDocument а в Normal.dot, что за ересь если мне надо в нескольких документах разные меню как быть? и если мне надо в автозагрузку нужного документа повесить код, чтобы в зависимости от ситуации разное меню, как быть?
Как то я добивался этого но изъян в том, что Нормал.дот пересохраняется, лично для меня это не приемлимо
Ципихович Эндрю на форуме Ответить с цитированием
Старый 08.01.2012, 08:33   #5
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

Всё вспомнил, меню в Ворде добавляется вручную

Сервис Настройка Команды
В столбце категории - Указать Новое меню
Из столбца Команды мышью захватить это новое меню и перетащить, например, правее меню Справка
Сохранить в - Указать, например этот документ, там отображается имя документа
Когда открыта форма Настройка можно навести на нужное меню, выделиь его и можно
Удалить Переименовать
Если указать имя меню: &Новое меню, оно будет отображено как: "Новое меню", что означает, что букве "Н" присвоена горячая клавиша, она выполняется вместе с клавишей Alt

Как указать текст подсказки к этому меню, это когда на меню наводится курсор, подсказка появляется? Ворд 2003
Спасибо
Ципихович Эндрю на форуме Ответить с цитированием
Старый 09.01.2012, 17:01   #6
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

я уже давно понял, что меню в Ворда можно добавлять только вручную, но примеры манят http://www.sd-company.su/article/vba/menu_creation
Код:
Dim CstmBar As CommandBar
Set CstmBar = CommandBars.Add(Name:="Головнoe меню", _
Position:=msoBarTop, MenuBar:=True, Temporary:=False)

Application.CommandBars.Add Name:="Имя головного меню", _
MenuBar:=True, Temporary:=True

Dim CstmCtrl As CommandBarControl
Set CstmCtrl = CstmBar.Controls.Add(Type:=msoControlPopup, Before:=1)
CstmCtrl.Caption = "&Ввод документов"
и не рабатают
???????
Ципихович Эндрю на форуме Ответить с цитированием
Старый 09.01.2012, 17:18   #7
Пименов Александр
Форумчанин
 
Регистрация: 17.11.2010
Сообщений: 222
По умолчанию

Цитата:
Сообщение от Ципихович Эндрю Посмотреть сообщение
я уже давно понял, что меню в Ворда можно добавлять только вручную, но примеры манят
Так то пример для 2003
Пименов Александр вне форума Ответить с цитированием
Старый 09.01.2012, 17:22   #8
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

у меня Ворд 2003, не работает
Ципихович Эндрю на форуме Ответить с цитированием
Старый 09.01.2012, 20:03   #9
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

вообще горю, доигрался, этим кодом
Код:
Dim CstmBar As CommandBar

'Выключаем все панели

For Each CstmBar In CommandBars

CstmBar.Enabled = False

Next CstmBar
скрыл меню, вернуть обратно не могу, переустановка Оффиса не помогла, иду ко дну
Ципихович Эндрю на форуме Ответить с цитированием
Старый 09.01.2012, 20:56   #10
Ципихович Эндрю
Старожил
 
Регистрация: 24.01.2011
Сообщений: 3,043
По умолчанию

востановил меню, выложили на другом форуме чудо файл, всё остальное в силе
Ципихович Эндрю на форуме Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
удаление пунктов меню в админке Nostalgia PHP 1 08.12.2011 01:40
внести в БД фамилию из ранее внесенных Ximera370 Помощь студентам 1 16.07.2011 15:37
Ошибка в ранее рабочем коде artemavd Общие вопросы Delphi 2 21.10.2010 05:54
Удаление ленты в 2007 excel и создание своего меню Raikhman Microsoft Office Excel 2 19.10.2010 00:18
удаление субкомпонента в меню structures Oburec Компоненты Delphi 0 01.05.2009 09:13