Свойство Cell.ResultStr (Visio)
Возвращает значение ячейки таблицы фигур, выраженное в виде строки. Только для чтения.
Синтаксис
expression. ResultStr (UnitsNameOrCode)
Выражение Переменная, представляющая объект Cell .
Параметры
Имя | Обязательный или необязательный | Тип данных | Описание |
---|---|---|---|
UnitsNameOrCode | Обязательный | Variant | Единицы измерения, используемые при получении значения. |
Возвращаемое значение
Строка
Замечания
Получение свойства ResultStr аналогично получению свойства Result ячейки. Разница заключается в том, что свойство ResultStr возвращает строку для значения ячейки, а свойство Result возвращает число с плавающей запятой.
Вы можете указать UnitsNameOrCode как целое число или строковое значение. Если строка недопустима, возникает ошибка. Например, следующие инструкции задают значение UnitsNameOrCode в дюймах.
stringReturned = Cell.ResultStr (visInches)
stringReturned = Cell.ResultStr (65)
stringReturned = Cell.ResultStr ("in"), где "in" также может быть любой из альтернативных строк, представляющих дюймы, например "inch", "in." или "intCounter".
Полный список допустимых строк единиц измерения вместе с соответствующими константами службы автоматизации (целыми значениями) см. в разделе Сведения о единицах измерения.
Константы автоматизации для представления единиц объявляются библиотекой типов Visio в элементе VisUnitCodes.
Передача нуля (0) достаточно для получения значения текстовых строковых ячеек.
Используйте свойство ResultStr для преобразования между единицами. Например, можно получить значение в дюймах, а затем получить эквивалентное значение в сантиметрах.
Свойство ResultStr полезно для заполнения элементов управления, таких как поля редактирования, значением ячейки.
Пример
В этом макросе Microsoft Visual Basic для приложений (VBA) показаны два разных способа использования свойства ResultStr для получения значения ячейки Таблицы фигуры, содержащей данные фигуры (ранее — Пользовательские свойства).
Чтобы запустить этот макрос, откройте пустой документ и набор элементов Компьютеры и мониторы (единицы измерения США), а затем вставьте пользовательскую форму, содержащую метку, текстовое поле и поле списка. Задайте для поля списка ширину 150.
Примечание.
Набор элементов компьютеров и мониторов (единиц США) доступен только в Visio профессиональный.
Public Sub ResultStr_Example()
Dim vsoStencil As Visio.Document
Dim vsoMaster As Visio.Master
Dim vsoPages As Visio.Pages
Dim vsoPage As Visio.Page
Dim vsoShape As Visio.Shape
Dim vsoCell As Visio.Cell
Dim intRows As Integer
Dim intCounter As Integer
'Get the Pages collection for the document.
'ThisDocument refers to the current document.
Set vsoPages = ThisDocument.Pages
'Get a reference to the first page of the Pages collection.
Set vsoPage = vsoPages(1)
'Get the Document object for the stencil.
Set vsoStencil = Documents("Comps_U.VSS")
'Get the Master object for the desktop PC shape.
Set vsoMaster = vsoStencil.Masters("PC")
'Drop the shape in the approximate middle of the page.
'Coordinates passed to the Drop method are always in inches.
'The Drop method returns a reference to the new shape object.
Set vsoShape = vsoPage.Drop(vsoMaster, 4.25, 5.5)
'This example shows two methods of extracting shape data.
'The first method retrieves the value of a shape-data item by name.
'Note that Prop.Manufacturer implies Prop.Manufacturer.Value.
Set vsoCell = vsoShape.Cells("Prop.Manufacturer")
'Get the cell value as a string
'and put it into the text box on the form.
UserForm1.TextBox1.Text = vsoCell.ResultStr(Visio.visNone)
'Set the caption of the label.
UserForm1.Label1.Caption = "Prop.Manufacturer"
'The second method of accessing shape data uses
'section, row, cell. This method is best when you want
'to iterate through all the shape data.
intRows = vsoShape.RowCount(Visio.visSectionProp)
'Make sure the list box is cleared.
UserForm1.ListBox1.Clear
'Loop through all the rows and add the value of Prop.Manufacturer
'to the list box. Rows are numbered starting with 0.
For intCounter = 0 To intRows - 1
Set vsoCell = vsoShape.CellsSRC(Visio.visSectionProp, intCounter, visCustPropsValue)
UserForm1.ListBox1.AddItem vsoCell.LocalName & vbTab & _
vsoCell.ResultStr(Visio.visNone)
Next intCounter
'Display the user form.
UserForm1.Show
End Sub
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.