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

Форум по вопросам применения и программирования в Visio
Текущее время: 21 сен 2017, 03:46

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


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


При размещении файлов предпочтительным является формат vsd (а не vsdx/vsdm)



Начать новую тему Ответить на тему  [ Сообщений: 6 ] 
Автор Сообщение
 Заголовок сообщения: Копирование свойств (на VBA)
СообщениеДобавлено: 10 ноя 2016, 12:30 
Не в сети
Ветеран

Зарегистрирован: 30 июл 2014, 14:28
Сообщений: 431
Использую Visio c: 2008
Очков репутации: 97

Добавить очки репутацииУменьшить очки репутации
Сделал "библиотеку" процедур на VBA для копирования свойств. Разных.
В файле (CopyProperties.vss), помимо основного модуля есть также 3 модуля с примерами.

Если скопировать нужные процедуры себе в документ, то все нормально будет работать.
А если нужно использовать код не копируя в свой документ, то необходимо подключать трафарет через VBE > Tools >References. Собственно, не нужно даже открывать вручную из Visio этот трафарет, а просто подключить и все.

Вот описание из файла:

Код:
' Список основных процедур:

' ШЕЙПЫ: ----------------------------------------------------------------------

' RunCopyPropSelectedShapes
' Копирование пользовательских свойств с выделением шейпов. Именованные строки.

' RunCopyPropSelectedShapesNotName
' Копирование пользовательских свойств с выделением шейпов. Неименованные строки.

' RunCopyPropSelectedShapesExt
' Копирование штатных свойств с выделением шейпов.

' RunCopyPropShapesID
' Копирование пользовательских свойств без выделения шейпов. Именованные строки.
' Возможно копирование из шейпа/субшейпа в шейпы/субшейпы.

' RunCopyPropShapesIDNotName
' Копирование пользовательских свойств без выделения шейпов. Неименованные строки.
' Возможно копирование из шейпа/субшейпа в шейпы/субшейпы.

' RunCopyPropShapesIDExt
' Копирование штатных свойств без выделения шейпов.
' Возможно копирование из шейпа/субшейпа в шейпы/субшейпы.


' СТРАНИЦЫ: -------------------------------------------------------------------

' RunCopyPropPages
' Копирование пользовательских свойств страницы. Именованные строки.
' Возможно копирование из страницы в страницы другого документа.

' RunCopyPropPagesNotName
' Копирование пользовательских свойств страницы. Неименованные строки.
' Возможно копирование из страницы в страницы другого документа.

' RunCopyPropPagesExt
' Копирование штатных свойств страницы.
' Возможно копирование из страницы в страницы другого документа.


' ДОКУМЕНТЫ: ------------------------------------------------------------------

' RunCopyPropDocs
' Копирование пользовательских свойств документа в другой документ/документы. Именованные строки.

' RunCopyPropDocsNotName
' Копирование пользовательских свойств документа в другой документ/документы. Неименованные строки.

' RunCopyPropDocsExt
' Копирование штатных свойств документа в другой документ/документы.

'------------------------------------------------------------------------------------------------------------

Скачать - CopyProperties.zip
https://yadi.sk/d/qbpj9WI9d2eqF


Последний раз редактировалось Shishok 10 ноя 2016, 20:30, всего редактировалось 1 раз.

Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Копирование свойств (на VBA)
СообщениеДобавлено: 10 ноя 2016, 19:53 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3362
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Shishok писал(а):
помимо основного модуля
ниасилил, кто же там основной. примеры с константами особо хороши :)


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Копирование свойств (на VBA)
СообщениеДобавлено: 10 ноя 2016, 20:00 
Не в сети
Ветеран

Зарегистрирован: 30 июл 2014, 14:28
Сообщений: 431
Использую Visio c: 2008
Очков репутации: 97

Добавить очки репутацииУменьшить очки репутации
Основной модуль - COPY_PROPERTIES_Module. Там собственно код копирования и находится.
А что не так с примерами с константами?


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Копирование свойств (на VBA)
СообщениеДобавлено: 10 ноя 2016, 20:11 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3362
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Shishok писал(а):
А что не так с примерами с константами?
наоборот. очень наглядно, когда константы в коде присутствуют. ты их как то по хитрому вытягивал с Auto-it ?


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Копирование свойств (на VBA)
СообщениеДобавлено: 10 ноя 2016, 20:21 
Не в сети
Ветеран

Зарегистрирован: 30 июл 2014, 14:28
Сообщений: 431
Использую Visio c: 2008
Очков репутации: 97

Добавить очки репутацииУменьшить очки репутации
Ничего не вытягивал, просто скопировал из справки для Разработчика:

Visio Automation Object Model Reference > Enumerations > VisRowIndices Constants
Или:
Visio Automation Object Model Reference > Enumerations > VisSectionIndices Constants


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Копирование свойств (на VBA)
СообщениеДобавлено: 10 ноя 2016, 20:31 
Не в сети
Ветеран

Зарегистрирован: 30 июл 2014, 14:28
Сообщений: 431
Использую Visio c: 2008
Очков репутации: 97

Добавить очки репутацииУменьшить очки репутации
Есть проблема, забыл написать.
Если скопировать нужные процедуры себе в документ, то все нормально будет работать.
А если нужно использовать код не копируя в свой документ, то необходимо подключать трафарет через VBE > Tools >References. Собственно, не нужно даже открывать вручную из Visio этот трафарет, а просто подключить и все.
Добавил информацию в пост.


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

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



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

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


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

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