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

Форум по вопросам применения и программирования в Visio
Текущее время: 28 мар 2024, 12:44

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


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


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

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



Начать новую тему Ответить на тему  [ Сообщений: 57 ]  На страницу 1, 2, 3  След.
Автор Сообщение
 Заголовок сообщения: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 11:39 
Не в сети
Новичок

Зарегистрирован: 20 ноя 2014, 10:46
Сообщений: 26
Использую Visio c: 2013
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
Добрый день коллеги!
Предлагаю обсудить возможность редактирования свойств шейпов через редактор электронной таблицы Excel.
Я работаю со схемами электроснабжения, на большой однолинейной схеме редактирование гиперссылок некоторых элементов сводится к копированию значения Lable в поле гиперссылки с добавлением расширения файла, аналогичная операция в Excel занимает секунды, а в редакторе Visio - часы кропотливого труда с высокой вероятностью ошибок.

Пробовал использовать Add-Ons "Export to database", но текстовых значений шейпа, в том числе гиперссылок, я в итоге не увидел.

Вопрос:
Возможно ли выгрузить текстовые данные шейпа, а именно гиперссылки и заголовки в Excel, отредактировать и загрузить их обратно?


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 12:14 
Не в сети
Ветеран

Зарегистрирован: 05 июл 2012, 21:34
Сообщений: 225
Очков репутации: 27

Добавить очки репутацииУменьшить очки репутации
Смотря что вы понимаете под гиперссылками.
Shape.Hyperlinks Property
Returns the Hyperlinks collection for a Shape object. Read-only.

Hyperlink Object Members
Completely encapsulates the properties and behavior of a hyperlink. A shape can have one or more hyperlinks that navigate to any named location, such as another page, a local document, or a URL. A Hyperlink object enables you to access and manipulate the shape's Hyperlink row.


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 12:26 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
есть такая фича Print ShapeSheet, она позволяет все содержимое шейпшита в эксель передать.
Изображение
я уже 2 года не могу ее на своем компе запустить, уже забыл можно ли там фильтровать какие секции
экспортировать в эксель, а какие нет

_________________
База знаний ShapeSheet
Мой Youtube-канал @surrogate-tm
Мои трафареты


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 12:37 
Не в сети
Ветеран

Зарегистрирован: 05 июл 2012, 21:34
Сообщений: 225
Очков репутации: 27

Добавить очки репутацииУменьшить очки репутации
Код:
Sub Get1()

    Dim vsoPages As Visio.Pages
    Dim vsoPage As Visio.Page

    Dim vsoShapes As Visio.Shapes
    Dim vsoShape As Visio.Shape

    Set vsoPages = ThisDocument.Pages
   
    Dim wb As Excel.Workbook
    Set wb = Excel.Workbooks.Open("D:\1\1.xlsx")
    Dim ws As Excel.Worksheet
    Set ws = wb.Worksheets(1)
    ws.Cells.Clear
   
    Dim i1 As Integer: i1 = 0
    For Each vsoPage In vsoPages
       Set vsoShapes = vsoPage.Shapes
       For Each vsoShape In vsoShapes
   
           If Not vsoShape.Text = "" Then
           
               i1 = i1 + 1
               ws.Cells(i1, 1) = vsoPage.NameU
               ws.Cells(i1, 2) = vsoShape.NameU
               ws.Cells(i1, 3) = vsoShape.Text
           
           End If
   
       Next
    Next
   
    wb.Save
    wb.Close

End Sub

Sub Set1()

    Dim vsoPages As Visio.Pages
    Dim vsoPage As Visio.Page

    Dim vsoShapes As Visio.Shapes
    Dim vsoShape As Visio.Shape

    Set vsoPages = ThisDocument.Pages
   
    Dim wb As Excel.Workbook
    Set wb = Excel.Workbooks.Open("D:\1\1.xlsx")
    Dim ws As Excel.Worksheet
    Set ws = wb.Worksheets(1)
   
    Dim i1 As Integer: i1 = 0
    Do While Not ws.Cells(i1 + 1, 1).Value = Empty
        i1 = i1 + 1
        Set vsoPage = vsoPages.ItemU(ws.Cells(i1, 1).Value)
        Set vsoShape = vsoPage.Shapes.ItemU(ws.Cells(i1, 2).Value)
        vsoShape.Text = ws.Cells(i1, 3).Value
    Loop
   
    wb.Close

End Sub


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 12:46 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
Robink,
это ветка ShapeSheet вроде. Изображение Не всем пользователям подходят решения в VBA.
поискал в этих ваших интернетах см. главу Can I Print Out the ShapeSheet Settings? в статье Chapter 3: Understanding the ShapeSheet (Microsoft Visio 2010 Business Process Diagramming and Validation)
да можно фильтровать экспортируемые в эксель данные
Изображение
но вот загонять данные обратно в визио она не может. Был еще аддин CelMaker (тема про это обсуждалась на форуме).
Изображение
Но что-то с ним тоже случилось после обновления не работает.

_________________
База знаний ShapeSheet
Мой Youtube-канал @surrogate-tm
Мои трафареты


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 13:04 
Не в сети
Ветеран

Зарегистрирован: 05 июл 2012, 21:34
Сообщений: 225
Очков репутации: 27

Добавить очки репутацииУменьшить очки репутации
Тогда уж свзи надо делать visio-excel.


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 13:13 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
pmspecial писал(а):
Я работаю со схемами электроснабжения, на большой однолинейной схеме редактирование гиперссылок некоторых элементов сводится к копированию значения Lable в поле гиперссылки с добавлением расширения файла, аналогичная операция в Excel занимает секунды, а в редакторе Visio - часы кропотливого труда с высокой вероятностью ошибок.
можно более подробно описать что конкретно нужно сделать ?
pmspecial писал(а):
Возможно ли выгрузить текстовые данные шейпа, а именно гиперссылки и заголовки в Excel, отредактировать и загрузить их обратно?
присоединюсь к вопросу Robink, а заголовки это что ?

PS pmspecial, если решение в сообщении #5789 устраивает можно переместить тему в ветку Программирование

_________________
База знаний ShapeSheet
Мой Youtube-канал @surrogate-tm
Мои трафареты


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 13:38 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
Surrogate в сообщении #5791 писал(а):
Но что-то с ним (celMaker) тоже случилось после обновления не работает.
сам же писал
Surrogate в сообщении #1788 писал(а):
Для тех кому лень морочиться с макросами есть готовое решение

celMaker copies Visio custom properties, user-defined cells and actions to and from Excel.
Microsoft Office Visio shape developers often need to copy custom properties, user-defined cells, actions and connection points from one master to another.
celMaker is a developers tool that allows selected ShapeSheet™ sections to be documented, verified, enhanced and propagated from one Visio master to another, including the migration of complex formulae. Current version supports Custom Properties, User-defined cells, Actions, Connection Points and SmartTags*.

* Visio 2003 only
тогда наверно только макросами можно порешать. ждем уточнений по задаче…

_________________
База знаний ShapeSheet
Мой Youtube-канал @surrogate-tm
Мои трафареты


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 13:56 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
все течет, все меняется…
таки поставил celMaker2. но гиперссылок там невозможно передать из экселя в визио.
Изображение
после вчерашних посиделок, я где много буков плохо читаю Изображение

_________________
База знаний ShapeSheet
Мой Youtube-канал @surrogate-tm
Мои трафареты


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 14:36 
Не в сети
Новичок

Зарегистрирован: 20 ноя 2014, 10:46
Сообщений: 26
Использую Visio c: 2013
Очков репутации: 0

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

Под гиперссылкой я понимаю ссылку на "local document", т.е. внешний файл или каталог с информацией о реальном объекте.
Программирование в моем случае, не решает проблемы, работаю в сети с жестким контролем программного обеспечения, т.е. самостоятельно установить программу или даже макрос невозможно, я даже картинку на сайт загрузить с рабочего места не могу....


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 14:39 
Не в сети
Новичок

Зарегистрирован: 20 ноя 2014, 10:46
Сообщений: 26
Использую Visio c: 2013
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
Surrogate писал(а):
Robink,
это ветка ShapeSheet вроде. Изображение Не всем пользователям подходят решения в VBA.
поискал в этих ваших интернетах см. главу Can I Print Out the ShapeSheet Settings? в статье Chapter 3: Understanding the ShapeSheet (Microsoft Visio 2010 Business Process Diagramming and Validation)
да можно фильтровать экспортируемые в эксель данные
Изображение
но вот загонять данные обратно в визио она не может. Был еще аддин CelMaker (тема про это обсуждалась на форуме).
Изображение
Но что-то с ним тоже случилось после обновления не работает.


Благодарю, постараюсь подгрузить SDK tools, у меня они пока отсутствуют, но судя по всему, штука крайне необходимая...


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 14:46 
Не в сети
Новичок

Зарегистрирован: 20 ноя 2014, 10:46
Сообщений: 26
Использую Visio c: 2013
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
Surrogate писал(а):
pmspecial писал(а):
Я работаю со схемами электроснабжения, на большой однолинейной схеме редактирование гиперссылок некоторых элементов сводится к копированию значения Lable в поле гиперссылки с добавлением расширения файла, аналогичная операция в Excel занимает секунды, а в редакторе Visio - часы кропотливого труда с высокой вероятностью ошибок.
можно более подробно описать что конкретно нужно сделать ?
pmspecial писал(а):
Возможно ли выгрузить текстовые данные шейпа, а именно гиперссылки и заголовки в Excel, отредактировать и загрузить их обратно?
присоединюсь к вопросу Robink, а заголовки это что ?

PS pmspecial, если решение в сообщении #5789 устраивает можно переместить тему в ветку Программирование


Поясню о чем идет речь, Visio и Excel имеют свои редакторы данных в которых мы непосредственно работаем.... так вот графические данные шейпов (линии, поля цвета и т.д.)можно редактировать и там и там, но удобнее в Visio, а текстовые данные, типа адреса гиперссылки удобнее редактировать в Excel (формулу склейки текстовых фрагментов протащил через весь диапазон строк и всё), так же можно выполнять групповое редактирование других свойств, например, принадлежность к слою или толщина линии и т.д. очень удобное гибкое групповое редактирование. В Excel шейп это строка в двухмерном массиве данных, эти строки можно фильтровать по любому столбцу, например по типу объекта, и свободно редактировать большие объемы, остается решить только глобоальный вопрос экспорта....

Программирование мне не очень помогает, хотя стараюсь, но не программист я....

Кстати, под заголовками я имел ввиду Lable или другое свойство шейпа, легко доступное в Visio, где можно сохранить идентификатор реального объекта, например силового трансформатора, чтобы потом по нему в Excel найти нужную строчку и внести изменения в соответствующей ячейке. В идеале, это видимый на чертеже текст из текстового блока шейпа.... но как его извлечь я вообще пока не понимаю, по крайней мере в свойствах шейпа я его не вижу даже в Visio.


Последний раз редактировалось pmspecial 20 ноя 2014, 15:23, всего редактировалось 1 раз.

Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 14:54 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
по умолчанию у шейпа нет свойства label. возможно речь идет о каком-то конкретном шейпе ?
ты пользуешся стандартными наборами элементов (стенсилами) ?

_________________
База знаний ShapeSheet
Мой Youtube-канал @surrogate-tm
Мои трафареты


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 15:03 
Не в сети
Ветеран

Зарегистрирован: 05 июл 2012, 21:34
Сообщений: 225
Очков репутации: 27

Добавить очки репутацииУменьшить очки репутации
Lable, это у вас позиционное обозначение? В какой секции храните? Покажить чтоли чтонибуть...


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 15:07 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
robink,
pmspecial писал(а):
я даже картинку на сайт загрузить с рабочего места не могу....

pmspecial в Багдаде все спокойно ?

_________________
База знаний ShapeSheet
Мой Youtube-канал @surrogate-tm
Мои трафареты


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 15:22 
Не в сети
Ветеран

Зарегистрирован: 05 июл 2012, 21:34
Сообщений: 225
Очков репутации: 27

Добавить очки репутацииУменьшить очки репутации
Ну можно зайти в таблицу свойств фигуры, найти ячейку, ткнуть туда мышкой, нажать f1, и сообщить куда попал).


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 15:25 
Не в сети
Новичок

Зарегистрирован: 20 ноя 2014, 10:46
Сообщений: 26
Использую Visio c: 2013
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
Surrogate писал(а):
robink,
pmspecial писал(а):
я даже картинку на сайт загрузить с рабочего места не могу....

pmspecial в Багдаде все спокойно ?


Спокойно 8-) пока, но работу работать надо....


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 15:33 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
Robink писал(а):
Ну можно зайти в таблицу свойств фигуры, найти ячейку, ткнуть туда мышкой, нажать f1, и сообщить куда попал).

я уже накопал как в шейпшите можно передавать значение в секцию Hyperlink :)

_________________
База знаний ShapeSheet
Мой Youtube-канал @surrogate-tm
Мои трафареты


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 15:35 
Не в сети
Новичок

Зарегистрирован: 20 ноя 2014, 10:46
Сообщений: 26
Использую Visio c: 2013
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
Surrogate писал(а):
по умолчанию у шейпа нет свойства label. возможно речь идет о каком-то конкретном шейпе ?
ты пользуешся стандартными наборами элементов (стенсилами) ?


Наборы элементов у меня стандартные, даже слишком :) свойствами я называю, то что вижу в табличках после нажатия Show Shapesheet в контекстном меню, прошу прощения, что выражаюсь криво, постараюсь исправиться.

Я скорректировал ответ, выше и постарался объяснить чего добиваюсь. Фактически я пытаюсь редактировать данные с применением наиболее удобных средств редактирования, аналогичные фокусы я уже применял в других пакетах, где надо было обработать большой массив цифровых данных.


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Редактирование свойств Shape через Excel
СообщениеДобавлено: 20 ноя 2014, 15:45 
Не в сети
Новичок

Зарегистрирован: 20 ноя 2014, 10:46
Сообщений: 26
Использую Visio c: 2013
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
Surrogate писал(а):
Robink писал(а):
Ну можно зайти в таблицу свойств фигуры, найти ячейку, ткнуть туда мышкой, нажать f1, и сообщить куда попал).

я уже накопал как в шейпшите можно передавать значение в секцию Hyperlink :)


Description Cell (Hyperlinks Section)


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

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



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

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


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

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