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

Форум по вопросам применения и программирования в Visio
Текущее время: 22 окт 2018, 22:28

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


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


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



Начать новую тему Эта тема закрыта, вы не можете редактировать и оставлять сообщения в ней.  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: В ячейку закинуть линки на другие шейпы
СообщениеДобавлено: 06 июл 2017, 11:52 
Не в сети
Просто PowerCat
Аватара пользователя

Зарегистрирован: 16 фев 2016, 10:11
Сообщений: 282
Использую Visio c: 2000
Очков репутации: 2

Добавить очки репутацииУменьшить очки репутации
Привет.
В коде пишу вот это:

Код:
ActivePage.Shapes("Sheet.1").Cells("Width").Formula = ActivePage.Shapes("Sheet.2").Cells("Width") + ActivePage.Shapes("Sheet.3").Cells("Width")


Код ВЫПОЛНЯЕТСЯ и ширина меняется.
НО - я ждал, что в ячейке появится ФОРМУЛА, т.е. аналогично экселю, ссылки, а не абсолют.
Вопрос - как сделать ссылочный вид, чтобы было нечто вроде перелинкованных ячеек - один шейп изменил ширину - и у остальных само поменялось? Возможно ли это?


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: В ячейку закинуть линки на другие шейпы
СообщениеДобавлено: 06 июл 2017, 11:57 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3362
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Можно так
Код:
sh.Cells("WIDTH").Formula = "Sheet.2!WIDTH+Sheet.3!WIDTH"
таким образом в ячейку width прописалась вышеуказанная формула.
в твоем случае будут определены длины ссылочных фигур, значения будут просуммированы и суммарное значение вписано в ячейку width


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: В ячейку закинуть линки на другие шейпы
СообщениеДобавлено: 06 июл 2017, 12:39 
Не в сети
Просто PowerCat
Аватара пользователя

Зарегистрирован: 16 фев 2016, 10:11
Сообщений: 282
Использую Visio c: 2000
Очков репутации: 2

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


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: В ячейку закинуть линки на другие шейпы
СообщениеДобавлено: 06 июл 2017, 12:51 
Не в сети
Просто PowerCat
Аватара пользователя

Зарегистрирован: 16 фев 2016, 10:11
Сообщений: 282
Использую Visio c: 2000
Очков репутации: 2

Добавить очки репутацииУменьшить очки репутации
а для crs ячеек как сослаться? В частности, на кастомные данные?


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: В ячейку закинуть линки на другие шейпы
СообщениеДобавлено: 06 июл 2017, 13:11 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3362
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
powercat писал(а):
а для crs ячеек как сослаться?
вопрос: зачем ?
предложенный мной вариант программно вписывает в определенную ячейку shapesheet, формулу содержащую ссылки на ячейки других шейпов.
powercat писал(а):
crs
ты про SRC (Section Row Cell) ? результат будет точно таким же как просто указав имя ячейки!
чтоб узнать нужные тебе константы для SRC формы записи придется в твоем любимом MSDN искать Изображение
по сути здесь примерно как в экселе когда есть форма записи A1 и R1C1.
Что это
Классическая и всем известная система адресации к ячейкам листа в Excel представляет собой сочетание буквы столбца и номера строки - морской бой или шахматы используют ту же идею для обозначения клеток доски. Третья сверху во втором столбце ячейка, например, будет иметь адрес B3. Иногда такой стиль ссылок еще называют "стилем А1". В формулах адреса могут использоваться с разным типом ссылок: относительными (просто B3), абсолютными ($B$3) и смешанного закрепления ($B3 или B$3). Если с долларами в формулах не очень понятно, то очень советую почитать тут про разные типы ссылок, прежде чем продолжать.

Однако же, существует еще и альтернативная малоизвестная система адресации, называемая "стилем R1C1". В этой системе и строки и столбцы обозначаются цифрами. Адрес ячейки B3 в такой системе будет выглядеть как R3C2 (R=row=строка, C=column=столбец).
В Visio к ячейке можно обращаться по ее имени или используя SRC формы записи
powercat писал(а):
В частности, на кастомные данные?
ровно так же
Код:
sh.Cells("Prop.Row_1").Formula = "Sheet.2!Prop.Row_1+Sheet.3!Prop.Row_1"


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: В ячейку закинуть линки на другие шейпы
СообщениеДобавлено: 06 июл 2017, 13:13 
Не в сети
Просто PowerCat
Аватара пользователя

Зарегистрирован: 16 фев 2016, 10:11
Сообщений: 282
Использую Visio c: 2000
Очков репутации: 2

Добавить очки репутацииУменьшить очки репутации
Получилось уже, просто надо укзать вместо Width Prop.Имя...
Сначала пишу, потом пробую ))
Тема закрыта )) Всех благодарю ))


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: В ячейку закинуть линки на другие шейпы
СообщениеДобавлено: 06 июл 2017, 13:31 
Не в сети
Administrator

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


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

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



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

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


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

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