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

Форум по вопросам применения и программирования в Visio
Текущее время: 28 мар 2024, 14:34

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


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


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

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



Начать новую тему Ответить на тему  [ Сообщений: 5 ] 
Автор Сообщение
 Заголовок сообщения: Получить значение ячейки из ShapeSheet через VBA
СообщениеДобавлено: 24 окт 2014, 08:48 
Не в сети

Зарегистрирован: 30 сен 2013, 03:20
Сообщений: 8
Использую Visio c: 2011
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Добрый день!
Помогите пожалуйста.
Есть фигура в ней данные.
Хочу программно получить значения ячейки prop.cab_type из shape data, в ячейке содержится текст
Но мессэджбокс не понимает текс и выдает 0
Код:
Sub inf()
Dim vsoSelection As Visio.Selection
Dim sb As Variant
Set vsoSelection = Application.ActiveWindow.Selection
Set sh = ActiveWindow.Selection
Set sb = ActivePage.Shapes.Item(1)
Set prop1 = sb.Cells("prop.cab_type")
MsgBox prop1
End Sub


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Получить значение ячейки из ShapeSheet через VBA
СообщениеДобавлено: 24 окт 2014, 10:15 
Не в сети

Зарегистрирован: 30 сен 2013, 03:20
Сообщений: 8
Использую Visio c: 2011
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Разобрался!
Код:
Sub inf()
Dim sb As Visio.Shape
Set sb = ActiveWindow.Selection.Item(1)
propcabtype = sb.Cells("prop.cab_type.value").ResultStr(65)
MsgBox propcabtype
End Sub

надо было добавить ResultStr(65) - где 65 число возвращаемых знаков


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Получить значение ячейки из ShapeSheet через VBA
СообщениеДобавлено: 24 окт 2014, 10:20 
Не в сети
Content manager
Content manager
Аватара пользователя

Зарегистрирован: 02 окт 2009, 01:01
Сообщений: 5043
Откуда: оттуда
Использую Visio c: 1998
Отрасль: Интеграция системных интеграторов
Должность: Дизайнер по оформлению документации
Уровнь квалификации: Форматирование документов MS Word
ch.wf
самое главное, что ты правильно объявил переменную Dim sb As Visio.Shape, а не Dim sb As Variant как в первоначальном варианте
вместо .ResultStr(65) можно писать .ResultStr("")

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


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Получить значение ячейки из ShapeSheet через VBA
СообщениеДобавлено: 24 окт 2014, 10:27 
Не в сети

Зарегистрирован: 30 сен 2013, 03:20
Сообщений: 8
Использую Visio c: 2011
Очков репутации: 1

Добавить очки репутацииУменьшить очки репутации
Surrogate писал(а):
ch.wf
самое главное, что ты правильно объявил переменную Dim sb As Visio.Shape, а не Dim sb As Variant как в первоначальном варианте
вместо .ResultStr(65) можно писать .ResultStr("")

Спс


Пожаловаться на это сообщение
Вернуться к началу
 Профиль  
Ответить с цитатой  
 Заголовок сообщения: Re: Получить значение ячейки из ShapeSheet через VBA
СообщениеДобавлено: 24 окт 2014, 14:18 
Не в сети
Ветеран

Зарегистрирован: 21 окт 2011, 12:01
Сообщений: 939
Откуда: г. Екатеринбург
Использую Visio c: 2011
Очков репутации: 127

Добавить очки репутацииУменьшить очки репутации
или так .ResultStr(0)
или так .ResultStr(visNone)
:)
ибо в хелпе по ResultStr сказано:
Цитата:
Passing a zero (0) is sufficient for getting the value of text string cells.


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

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



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

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


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

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