Форум пользователей Visio

Форум по вопросам применения и программирования в Visio
Текущее время: 29 мар 2024, 01:31

Часовой пояс: UTC + 3 часа [ Летнее время ]


Правила форума


При размещении файлов предпочтительным является формат vsd (а не vsdx/vsdm)
Размещая ваши вложения на форуме не используйте имена файлов содержащих кириллицу, в противном случае файл будет иметь имя .<расширение файла> !

Для форматирования ваших сообщений используйте BBCodes, описание используемых на форуме BBCodes.



Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Как привязать макрос к кнопке на панели инструментов.
СообщениеДобавлено: 20 июн 2018, 15:51 
Не в сети
Бывалый

Зарегистрирован: 19 июн 2015, 22:18
Сообщений: 114
Использую Visio c: 2013
Очков репутации: 21

Добавить очки репутацииУменьшить очки репутации
Работаю в Visio 2007.
Нужно выполнять много однообразных операций. Сделал макросы, хотел привязать к кнопке на панели инструментов - не могу!

Макросы находятся в отдельном модуле документа - NewMacros.
Через меню вызываются: Сервис - Макрос - NewMacros - RedFont(это имя макроса)

А вот как привязать к кнопке на панели инструментов?
Вызываю панель инструментов, создаю свою пустую панель. Могу перетаскивать на нее команды.
НО СРЕДИ КОМАНД МАКРОСОВ НЕ ВИДНО. Как быть?

Вложение:
Macros.png
Macros.png [ 37.93 Кб | Просмотров: 1963 ]


На рисунке видно мою пустую панель, а в списке команд только "Марокросы..." и "Список макросов". Если поместить "Макросы..." - вызывается диалоговое окно выбора макроса для запуска. "Список макросов" - вообще кнопка неактивна.

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


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Как привязать макрос к кнопке на панели инструментов.
СообщениеДобавлено: 20 июн 2018, 17:12 
была похожая тема еще на старом форуме


Пожаловаться на это сообщение
Вернуться к началу
  
Ответить с цитатой  
 Заголовок сообщения: Re: Как привязать макрос к кнопке на панели инструментов.
СообщениеДобавлено: 21 июн 2018, 15:07 
Не в сети
Бывалый

Зарегистрирован: 19 июн 2015, 22:18
Сообщений: 114
Использую Visio c: 2013
Очков репутации: 21

Добавить очки репутацииУменьшить очки репутации
Спасибо, помогло. Помучился только с назначением макроса OnAction. В примере задано .OnAction=ThisDocument.Main.
Я написал подобное, но вылетала ошибка. В результате все же сделал так - поместил вызываемые макросы в модуль и указал на него:

Содержимое спрятано под спойлер ↓
Спойлер:
Код:
Sub InitMacros()
    Dim cbrCommandBar As CommandBar
    Dim cbbCommandBarButton As CommandBarButton
   
    Set cbrCommandBar = Application.CommandBars("Мои макросы")
    Do While (cbrCommandBar.Controls.Count > 0)
        cbrCommandBar.Controls.Item(1).Delete
    Loop
   
    Set cbbCommandBarButton = cbrCommandBar.Controls.Add(Type:=msoControlButton)
    With cbbCommandBarButton
        .Caption = "Синий"
        .TooltipText = "Синий - резервный кананал"
        .Tag = "синий"
        .FaceID = 59
        .Style = msoButtonIconAndCaption
        .OnAction = "NewMacros.AllBlue"
    End With
   
    Set cbbCommandBarButton = cbrCommandBar.Controls.Add(Type:=msoControlButton)
    With cbbCommandBarButton
        .Caption = "Красный"
        .TooltipText = "Красный - резервный кананал"
        .Tag = "красный"
        .FaceID = 59
        .Style = msoButtonIconAndCaption
        .OnAction = "NewMacros.AllRed"
    End With
   

    Set cbbCommandBarButton = cbrCommandBar.Controls.Add(Type:=msoControlButton)
    With cbbCommandBarButton
        .Caption = "Черный"
        .TooltipText = "Черный - резервный кананал"
        .Tag = "Черный"
        .FaceID = 59
        .Style = msoButtonIconAndCaption
        .OnAction = "NewMacros.AllBlack"
    End With

End Sub


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Как привязать макрос к кнопке на панели инструментов.
СообщениеДобавлено: 29 апр 2020, 10:45 
Не в сети
Ветеран

Зарегистрирован: 26 авг 2019, 21:07
Сообщений: 267
Использую Visio c: 2019
Очков репутации: 11

Добавить очки репутацииУменьшить очки репутации
А если макрос, который нужно повесить на кнопку (или вообще хоть как-то запустить), находится в другом шаблоне или файле, то нужно добавить на него ссылку в "References...".
Делать это нужно в том файле(.vsd) или шаблоне документа(.vst) из которого будет запускаться макрос.
Содержимое спрятано под спойлер ↓
Спойлер:
Вложение:
References.png
References.png [ 116.38 Кб | Просмотров: 1408 ]


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Как привязать макрос к кнопке на панели инструментов.
СообщениеДобавлено: 16 сен 2020, 17:05 
Не в сети
Постоянный участник
Аватара пользователя

Зарегистрирован: 13 авг 2020, 04:53
Сообщений: 87
Использую Visio c: 2000
Уровнь квалификации: начальный
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
а есть какие то относительно несложные методы создания "своей кнопки" для Ribbon-ленты инструментов? Для Visio 2016-2019?


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Как привязать макрос к кнопке на панели инструментов.
СообщениеДобавлено: 16 сен 2020, 17:23 
Не в сети
Administrator

Зарегистрирован: 30 авг 2009, 11:02
Сообщений: 2253
Очков репутации: 100626

Добавить очки репутацииУменьшить очки репутации
Сдается мне, что самый простой способ здесь - https://visioport.ru/blog/index.php/31-ribb-vba


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Как привязать макрос к кнопке на панели инструментов.
СообщениеДобавлено: 17 сен 2020, 17:46 
Не в сети
Постоянный участник
Аватара пользователя

Зарегистрирован: 13 авг 2020, 04:53
Сообщений: 87
Использую Visio c: 2000
Уровнь квалификации: начальный
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
Tumanov писал(а):
Сдается мне, что самый простой способ здесь - https://visioport.ru/blog/index.php/31-ribb-vba

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


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Как привязать макрос к кнопке на панели инструментов.
СообщениеДобавлено: 17 сен 2020, 19:35 
Не в сети
Administrator

Зарегистрирован: 30 авг 2009, 11:02
Сообщений: 2253
Очков репутации: 100626

Добавить очки репутацииУменьшить очки репутации
Это хорошо. Значит, не зря писал :)

!
Данная ветвь обсуждения была разделена.
Последующее обсуждение перенесено в раздел Программирование, ветвь обсуждения Как привязать макрос к кнопке на панели быстрого доступа.


Последний раз редактировалось Surrogate 26 июн 2023, 13:27, всего редактировалось 1 раз.
Добавлена информация о разделении темы


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]



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

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


Вы можете начинать темы
Вы можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Вы можете создать форум бесплатно PHPBB3 на Getbb.Ru, Также возможно сделать готовый форум PHPBB2 на Mybb2.ru
Русская поддержка phpBB