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

Форум по вопросам применения и программирования в Visio
Текущее время: 27 мар 2024, 08:57

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


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


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

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



Начать новую тему Ответить на тему  [ Сообщений: 7 ] 
Автор Сообщение
 Заголовок сообщения: в какой библиотеке FIND?
СообщениеДобавлено: 09 дек 2016, 14:42 
Не в сети
Новичок

Зарегистрирован: 25 мар 2016, 17:19
Сообщений: 21
Использую Visio c: 2013
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
нашел макрос на поиск текста, но выдает ошибку в строке
Код:
startPos = Find(txtFind1, Shape.Text)

Sub or Function not defined
судя по всему, библиотека какая-то не подключена. но вот какая? перерыл много статей, но так и не нашел.


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в какой библиотеке FIND?
СообщениеДобавлено: 09 дек 2016, 14:59 
Не в сети
Ветеран

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

Добавить очки репутацииУменьшить очки репутации
Нет в Visio программного поиска. К сожалению. :(
Только самому написать такую функцию.

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


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в какой библиотеке FIND?
СообщениеДобавлено: 09 дек 2016, 15:02 
Не в сети
Новичок

Зарегистрирован: 25 мар 2016, 17:19
Сообщений: 21
Использую Visio c: 2013
Очков репутации: 0

Добавить очки репутацииУменьшить очки репутации
н-да... а может кто писал уже? я так понимаю, функцией MID придется, но там всякие проверки на длину... и ещё - как осуществить перебор шейпов внутри сгруппированных объектов? я так понимаю, один сгруппированный объект - один шейп?


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в какой библиотеке FIND?
СообщениеДобавлено: 09 дек 2016, 15:05 
Не в сети
Ветеран

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

Добавить очки репутацииУменьшить очки репутации
Посмотри эту тему:
http://visio.getbb.ru/viewtopic.php?f=6&t=1024

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


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в какой библиотеке FIND?
СообщениеДобавлено: 09 дек 2016, 15:38 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
koui писал(а):
макрос на поиск текста
имеется в виду поиск (позиции начала фрагмента) текста по всему документу или все таки в тексте конкретного шейпа ?
koui писал(а):
Shape.Text
если в тексте шейпа то можно попробовать функцию Instr
Изображение
МИР MS EXCEL в статье Функция InStr писал(а):
Функция InStr
InStr([Start,]String1,String2[,Compare])
InStrB([Start,]String1,String2[,Compare])
Функция InStr(In String) служит для поиска номера символа(номера байта для InStrB), с которого начинается в заданной строке образец поиска. Поиск идет от указанной позиции слева направо. Поиск вхождения одной строки в другую весьма часто используемая операция. Нумерация символов всегда начинается с единицы
Примечание
В функции InStr при очень длинных строках при текстовом методе сравнения, возможно возникновение ошибки времени исполнения Stack overflow. Избежать этой ошибки можно, переведя исходную строку и образец в один регистр и перейдя на бинарное сравнение
Возвращаемое значение
Возвращает значение типа Variant(Long), указывающее позицию первого появления одной строки внутри другой

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


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в какой библиотеке FIND?
СообщениеДобавлено: 09 дек 2016, 16:01 
Не в сети
Ветеран

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

Добавить очки репутацииУменьшить очки репутации
Не забываем про функцию VBA - Like. Она правда не определяет в какой позиции строки находится искомый текст.

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


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: в какой библиотеке FIND?
СообщениеДобавлено: 09 дек 2016, 16:12 
Не в сети
Content manager
Content manager
Аватара пользователя

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

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


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

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



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

Сейчас этот форум просматривают: Yandex [bot] и гости: 1


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

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