Форум программистов, компьютерный форум, киберфорум
Наши страницы
VBA
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.60/5: Рейтинг темы: голосов - 5, средняя оценка - 4.60
G59
0 / 0 / 0
Регистрация: 10.12.2017
Сообщений: 41
Завершенные тесты: 1
1

Макросы в верхнее меню

11.07.2019, 16:11. Просмотров 852. Ответов 2
Метки нет (Все метки)

Добрый день. Поставили задачу написать несколько макросов и вынести их в отдельную вкладку на верхней панели. Макросы сделал, а вот с меню возникли проблемы.

1) С помощью этого кода добавляю макросы на панель. В результате эти кнопки добавляются в существующее меню "Надстройки", а не в новое. Причем, если создавать через Файл-Параметры-Настроить ленту, то там можно выделить что угодно в отдельную вкладку. Что я делаю не так?
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
With Application.CommandBars("Worksheet Menu Bar")
            On Error Resume Next
            .Controls("Стили").Delete
            .Controls("Удаление пробелов").Delete
            .Controls("Подготовка столбцов поиска").Delete
            .Controls("Заполнение данными").Delete
            .Controls("Просто кнопка").Delete
            On Error GoTo 0
            
            Set objPopUp = .Controls.Add( _
                Type:=msoControlButton, _
                before:=.Controls.Count, _
                temporary:=True)
            With objPopUp
                .Caption = "Стили"
                .OnAction = "Задание1"
                .Style = msoButtonIconAndCaption
                .FaceId = 767
            End With
 
Set objPopUp = .Controls.Add( _
                Type:=msoControlButton, _
                before:=.Controls.Count, _
                temporary:=True)
            With objPopUp
                .Caption = "Удаление пробелов"
                .OnAction = "Задание2"
                .Style = msoButtonIconAndCaption
                .FaceId = 1964
            End With
            
            Set objPopUp = .Controls.Add( _
                Type:=msoControlButton, _
                before:=.Controls.Count, _
                temporary:=True)
            With objPopUp
                .Caption = "Подготовка столбцов поиска"
                .OnAction = "Задание3"
                .Style = msoButtonIconAndCaption
                .FaceId = 2101
            End With
            
            Set objPopUp = .Controls.Add( _
                Type:=msoControlButton, _
                before:=.Controls.Count, _
                temporary:=True)
            With objPopUp
                .Caption = "Заполнение данными"
                .OnAction = "Задание6"
                .Style = msoButtonIconAndCaption
                .FaceId = 1958
            End With
End With
2) Почему добавленные мной пункты появляются во всех файлах Экселя? Как привязать их к отдельному файлу? Мне сказали, что их нужно добавлять при запуске и удалять при закрытии. Я сделал, но если при открытом файле с моим меню открыть еще какой-нибудь, то появляется меню с добавленными мною пунктами. Пробовал на события Workbook_WindowActivate/Workbook_WindowDeactivate скрывать их, но как тогда избежать добавления пунктов меню другими файлами? (У моего руководителя есть несколько надстроек и они отображаются в моем файле с макросами)
0
Миниатюры
Макросы в верхнее меню   Макросы в верхнее меню  
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
11.07.2019, 16:11
Ответы с готовыми решениями:

При загрузке программы макросы не отключаются - но макросы не срабатывают.
уровень безопасности - средний, при загрузке программы макросы не отключаются - но макросы не...

Как при загрузке документа в Excele в меню "Сервис" активизировать макросы
При загрузке программы необходимо чтобы в меню 'Сервис' активизировались макросы написанные в этой...

Верхнее меню
помогите сделать, чтобы элементы sub-menu находились под элементами main-menu, заранее спасибо ...

Верхнее меню
Дорогие Форумчане! Спасите "чайника"! После каких-то манипуляций с сайтом, моё верхнее меню с...

Верхнее меню
Здравствуйте! Подскажите, пожалуйста, как мне исправить верхнее меню? с левым и правым меню и...

2
Kate_27
176 / 118 / 58
Регистрация: 27.03.2019
Сообщений: 250
11.07.2019, 17:11 2
Лучший ответ Сообщение было отмечено G59 как решение

Решение

G59, а может отредактировать ленту именно в конкретном файле?
например через редактор ленты и xml код.
Работать будет в одной конкретной книге, для которой это все и пишется.
1
G59
0 / 0 / 0
Регистрация: 10.12.2017
Сообщений: 41
Завершенные тесты: 1
12.07.2019, 10:25  [ТС] 3
Благодарю, все получилось.
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.07.2019, 10:25

Верхнее Меню
Народ, плиз, подскажите как закрепить открытое верхнее меню Powerpoint 2016 г.? Надоело его...

Верхнее меню и виджеты
как убрать из верхнего меню страницы которые не являются id 50(к примеру) пробывал и плагин...

Пропадает верхнее меню
Привет Верхнее горизонтальное меню черного цвета пропадает только при нажатии на любое подменю в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru