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

Форум по вопросам применения и программирования в Visio
Текущее время: 29 мар 2024, 03:47

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


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


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

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



Начать новую тему Ответить на тему  [ Сообщений: 26 ]  На страницу Пред.  1, 2
Автор Сообщение
 Заголовок сообщения: Re: в группе фигур отключать видимой одной определенной фигуры
СообщениеДобавлено: 16 фев 2018, 01:18 
спасибо огромное! работает, хоть я и не очень понял почему.

в общем в User.Row_3 вставил вашу формулу
=IF(STRSAME(Prop.Rohrboden,"fest"),1,0)+SETF(GetRef(ThePage!Layers.Visible[9]),1)+SETF(GetRef(ThePage!Layers.Visible[5]),1)+IF(STRSAME(Prop.Rohrboden,"fest",TRUE),SETF(GetRef(ThePage!Layers.Visible[5]),0),SETF(GetRef(ThePage!Layers.Visible[9]),0))

единственное с моими познаниями Visio не могу понать для чего первая часть в формуле:
=IF(STRSAME(Prop.Rohrboden,"fest"),1,0)+SETF(GetRef(ThePage!Layers.Visible[9]),1)+SETF(GetRef(ThePage!Layers.Visible[5]),1) ....

почему не достаточно просто начать с условия IF? если, то включить слой X иначе Y? что-то это из ряда моих познаний информатики. В чем хитрость? почему не работает просто эта формула?
=IF(STRSAME(Prop.Rohrboden,"fest",TRUE),SETF(GetRef(ThePage!Layers.Visible[5]),0),SETF(GetRef(ThePage!Layers.Visible[9]),0))

хорошо что есть такой форум, иначе бы труба проекту! Спасибо!


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

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

Добавить очки репутацииУменьшить очки репутации
В общем первая часть формулы включает оба слоя(мы по идее же не знаем какие были отключены)
А еще у тебя User.Row_2 и User.Row_4 дубликаты вышестоящих. Зачем? :)

_________________
GitHub
Yandex-диск с набором полезных утилит


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в группе фигур отключать видимой одной определенной фигуры
СообщениеДобавлено: 28 окт 2020, 22:31 
Не в сети
Ветеран
Аватара пользователя

Зарегистрирован: 08 мар 2020, 00:19
Сообщений: 336
Использую Visio c: 2019
Очков репутации: 4

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

_________________
Группа в VK Фигуры электрики для Visio


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в группе фигур отключать видимой одной определенной фигуры
СообщениеДобавлено: 29 окт 2020, 01:44 
Не в сети
Content manager
Content manager
Аватара пользователя

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

Events

EventDblClick

SETF(GetRef(ThePage!Layers.Visible),not(ThePage!Layers.Visible))+SETF(GetRef(ThePage!Layers.Visible[2]),NOT(ThePage!Layers.Visible[2]))+SETF(GetRef(ThePage!Layers.Visible[3]),NOT(ThePage!Layers.Visible[3]))+SETF(GetRef(ThePage!Layers.Visible[4]),NOT(ThePage!Layers.Visible[4]))+SETF(GetRef(ThePage!Layers.Visible[5]),NOT(ThePage!Layers.Visible[5]))+SETF(GetRef(ThePage!Layers.Visible[6]),NOT(ThePage!Layers.Visible[6]))+SETF(GetRef(ThePage!Layers.Visible[7]),not(ThePage!Layers.Visible[7]))+SETF(GetRef(ThePage!Layers.Visible[8]),not(ThePage!Layers.Visible[8]))+SETF(GetRef(ThePage!Layers.Visible[9]),not(ThePage!Layers.Visible[9]))+SETF(GetRef(ThePage!Layers.Visible[10]),not(ThePage!Layers.Visible[10]))

 

Если тупо выключить видимость слоев, то формула будет такая
SETF(GetRef(ThePage!Layers.Visible),0)+SETF(GetRef(ThePage!Layers.Visible[2]),0)+SETF(GetRef(ThePage!Layers.Visible[3]),0)+SETF(GetRef(ThePage!Layers.Visible[4]),0)+SETF(GetRef(ThePage!Layers.Visible[5]),0)+SETF(GetRef(ThePage!Layers.Visible[6]),0)+SETF(GetRef(ThePage!Layers.Visible[7]),0)+SETF(GetRef(ThePage!Layers.Visible[8]),0)+SETF(GetRef(ThePage!Layers.Visible[9]),0)+SETF(GetRef(ThePage!Layers.Visible[10]),0)


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в группе фигур отключать видимой одной определенной фигуры
СообщениеДобавлено: 30 окт 2020, 01:11 
Не в сети
Ветеран
Аватара пользователя

Зарегистрирован: 08 мар 2020, 00:19
Сообщений: 336
Использую Visio c: 2019
Очков репутации: 4

Добавить очки репутацииУменьшить очки репутации
А как узнать номер слоя? Или они идут по порядку добавления?

_________________
Группа в VK Фигуры электрики для Visio


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в группе фигур отключать видимой одной определенной фигуры
СообщениеДобавлено: 30 окт 2020, 01:27 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
Tim Umix писал(а):
А как узнать номер слоя? Или они идут по порядку добавления?
да, по мере добавления.
Изображение
еще немного наблюдений по этой теме:
Surrogate в сообщении #5362 писал(а):
1. слои относятся к листу. в окне Свойства слоев или LayerProperties слои отображаются в алфавитном порядке. А в шейпшите листа слои будут идти по мере добавления на лист и не будет видно как эти слои называются, что при большом числе слоев может вызвать путаницу…
UPDATED: До кучи в свойстве LayerMembersheep индексация принадлежности к слою будет идти в том же порядке, что и в шейпшите листа. Но их нумерация будет начинаться не с 1, а с 0. Это доставит еще больше путаницы
нумерация c 0, имелась в виду в VBA.


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

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



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

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


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

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