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

Форум по вопросам применения и программирования в Visio
Текущее время: 27 июл 2017, 20:32

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


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


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



Начать новую тему Ответить на тему  [ Сообщений: 9 ] 
Автор Сообщение
 Заголовок сообщения: как обновляются ячейки ShapeSheet
СообщениеДобавлено: 22 авг 2015, 13:33 
Не в сети
Постоянный участник

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

Добавить очки репутацииУменьшить очки репутации
В трафарете в свойствах документа есть ячейка

TheDoc!User.FontSize

В трафарете один мастер - простой прямоугольник. В нем:

User.Row_1 = SETF(GetRef(TheDoc!User.FontSize),Char.Size)

Т.е. я хочу, чтобы изменение шрифта прямоугольника попадало в ячейку документа.

Так вот, если я редактирую сам мастер, то при изменении шрифта ячейка документа обновляется.
А если я переношу мастер на документ, то ячейка документа не обновляется.

Почему? И как сделать так, чтобы она обновлялась?


Вложения:
TestFontSize.rar [5.79 Кб]
Скачиваний: 25
Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: как обновляются ячейки ShapeSheet
СообщениеДобавлено: 24 авг 2015, 01:05 
Не в сети
Administrator

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


Вложения:
Комментарий к файлу: например
123.ZIP [28.85 Кб]
Скачиваний: 34
123.png
123.png [ 5.48 Кб | Просмотров: 833 ]
Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: как обновляются ячейки ShapeSheet
СообщениеДобавлено: 24 авг 2015, 10:35 
Не в сети
Постоянный участник

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

Добавить очки репутацииУменьшить очки репутации
Браво!

Строка:
Код:
=IF(NOT(STRSAME(User.docvalue,User.charsize)),SETF(GetRef(TheDoc!User.charsize),Char.Size),SETF(GetRef(TheDoc!User.charsize),Char.Size))

конечно меня убила, но это действительно работает!
Я проверил, работает и без дополнительных переменных:
Код:
=IF(NOT(STRSAME(TheDoc!User.charsize,Char.Size)),SETF(GetRef(TheDoc!User.charsize),Char.Size),SETF(GetRef(TheDoc!User.charsize),Char.Size))


Спасибо. Еще один урок для меня: когда прямые ссылки в Visio не работают (почему-то!) - нужно делать дополнительную формулу сравнения для инициализации действия.


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: как обновляются ячейки ShapeSheet
СообщениеДобавлено: 24 авг 2015, 11:13 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3362
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Фокусу меня научил Digitall™
ты не обратил внимание в шаблоне visio_document.vss часто встречается формула if(0=0,setf,setf),
где в SETF одна и та же формула - в итоге по-любому в TheDoc будет «нужное» значение!


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: как обновляются ячейки ShapeSheet
СообщениеДобавлено: 19 июл 2016, 11:41 
Не в сети
Новичок

Зарегистрирован: 21 май 2014, 11:11
Сообщений: 45
Использую Visio c: 2005
Очков репутации: 3

Добавить очки репутацииУменьшить очки репутации
Возможно ли организовать взаимосвязь значений? При изменении TheDoc!User.charsize обновить Char.Size и наоборот при изменении Char.Size изменить TheDoc!User.charsize?
Идея в том, что поле TheDoc может измениться из нескольких мест, а в фигуре необходимо иметь актуальное значение, да еще и менять его ...
Фигура с возможностью напрямую изменять значение полей TheDoc в документе будет уникальной. Прочие фигуры меняют значение через Action.
P.S.
Можно как-то привязать вводимый в фигуру текст к полю данных? Отображение привязывается через меню "Вставка / Поле", но при вводе текста все рушится


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: как обновляются ячейки ShapeSheet
СообщениеДобавлено: 19 июл 2016, 11:47 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3362
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
а этот фокус мне показал 9rey
9rey в сообщении #6550 писал(а):
Surrogate
можно же через SETATREF: в Prop.Row_1 вписать SETATREF(TheDoc!User.ololo)
тогда ячейки Prop.Row_1, TheDoc.User.ololo свяжутся


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: как обновляются ячейки ShapeSheet
СообщениеДобавлено: 19 июл 2016, 12:47 
Не в сети
Administrator

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

Добавить очки репутацииУменьшить очки репутации
По поводу SetAtRef самое подробное исследование - это наверное http://visguy.com/vgforum/index.php?top ... 8#msg26308
Причем не столько сам топик, сколько вложенные файлы.


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: как обновляются ячейки ShapeSheet
СообщениеДобавлено: 19 июл 2016, 13:01 
Не в сети
Administrator

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 3362
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Связь
Должность: Бывший проектировщик
Уровнь квалификации: ShapeSheet, VBA
Геннадий спасибо за ссылку, забыл про нее
выходил сейчас на перекур и вспомнил что уже делился здесь этой ссылкой и еще парой других, посвященных этой мистической функции
Surrogate в сообщении #6648 писал(а):
9rey в сообщении #6550 писал(а):
Surrogate
можно же через SETATREF: в Prop.Row_1 вписать SETATREF(TheDoc!User.ololo)
тогда ячейки Prop.Row_1, TheDoc.User.ololo свяжутся
на эту тему на форуме visguy выросло несколько веток с массой примеров:
What's with SETATREF anyway?
SetAtRef et al.
сообщение в ветке Change shape color as a function as input


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: как обновляются ячейки ShapeSheet
СообщениеДобавлено: 26 июл 2016, 12:35 
Не в сети
Administrator

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


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

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



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

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


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

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