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

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

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


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


Размещение файлов в формате vsd (а не vsdx/vsdm), увеличивает вероятность ответа стремительным домкратом !!!



Начать новую тему Ответить на тему  [ Сообщений: 2 ] 
Автор Сообщение
 Заголовок сообщения: Ссылка на ячейку в другой фигуре, на другом листе, в TheDoc
СообщениеДобавлено: 28 июл 2015, 15:28 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3229
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Иногда по долгу службы™ возникает ситуация когда нужно получить значение из ячейки в другой фигуре (в том числе на другом листе), ячейки в свойствах страницы или документа. В случаях с другой фигурой или другой страницей возникает путаница обусловленная "проблемой локальных и универсальных имен".
Visio Team 27 Jul 2006 в Name and NameU писал(а):
The local name is a friendly name that is displayed in the Visio user interface. For Visio’s own content, this is a string translated for the product sku of Visio (i.e. German strings in German Visio). Users have the ability to rename Page and Master and Cell objects, and that changes the local name. Local names allow users to see things in a language that makes sense to them.

The universal name is hidden from the user interface and can only be updated through automation. This keeps a universal name consistent across product versions and user edits. A constant name allows solution developers to refer to objects by an identifier that makes sense to them. This identifier works no matter what is displayed for the local name.

Подробнее…
На нашем форуме эта проблема уже обсуждалась, см. обсуждение здесь и начиная отсюда

В одной из книг по VBA в Excel мне встретился способ "Программирование с помощью в окна Immediate"
Спасибо Digitall™ за помощь в написании мануала
Digitall™ в Skype писал(а):
Понял как работает. Но дико нетривиально!
1. Открываем редактор VBA из Визио. Это важно.
2. Открываем в нем окно Immediate.
3. Копируем заготовку (содержимое из столбца C) в соответствующей строке на соответствующем листе книги excel.
4. Выделаем первую фигуру (ссылочную) в Визио.
5. Вставляем заготовку в окно Immediate, ставим курсор в конец заготовки и нажимаем Enter. Ниже заготовки появится вторая строка с нужной формулой.
6. Выделяем в Визио вторую фигуру (целевую).
7. В окне Immediate ставим курсор в конец второй строки (в конце формулы) и нажимаем Enter.
Вложение:
ImmediateWindow_Snippet.xlsx [13.36 Кб]
Скачиваний: 95

Дополнение:
Surrogate в #msg28029 писал(а):
1. Выделите интересующий шейп
2. Нажмите Alt+F11
3. Если VBA не открыто окно Immediate Window, нажмите Ctrl+G
4. В окне Immediate Window вставьте код
Код:
?"Pages[" & ActiveWindow.Selection(1).Parent & "]!sheet." & ActiveWindow.Selection(1).ID
Profit: во второй строке Immediate Window получите полную ссылку на интересующий шейп :)

Изображение


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Ссылка на ячейку в другой фигуре, на другом листе, в TheDoc
СообщениеДобавлено: 28 июл 2015, 16:06 
Не в сети
Administrator

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

Добавить очки репутацииУменьшить очки репутации
Цитата:
... на соответствующем листе книги excel

А Excel зачем?
Вопрос снят :)


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

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



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

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


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

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