Compartir a través de


Método GraphicItem.SetExpression (Visio)

Establece el valor de la cadena de expresión que forma parte de la regla de un objeto GraphicItem , con el que se evalúan los datos de forma (propiedades personalizadas).

Nota:

Este objeto o miembro Visio solo se encuentra disponible para los usuarios con licencia de Visio Professional 2013.

Sintaxis

expresión. SetExpression( _Field_ , _Expression_ )

Expresión Expresión que devuelve un objeto GraphicItem .

Parameters

Nombre Obligatorio/opcional Tipo de datos Descripción
Field Obligatorio VisGraphicField Etiqueta o fórmula del campo de datos principal (columna) asignada a GraphicItem. Vea la sección Comentarios para los valores posibles.
Expresión Obligatorio String Expresión de ShapeSheet asociada al parámetro Field.

Valor devuelto

Nothing

Comentarios

El parámetro Field devuelto debe ser uno de los valores siguientes de la enumeración VisGraphicField declarada en la biblioteca de tipos de Microsoft Visio.

Constante Valor Descripción
visGraphicPropertyLabel 1 Etiqueta de un elemento de datos de formas.
visGraphicExpression 2 Fórmula de ShapeSheet de un elemento de datos de formas.

Al pasar el método SetExpression una etiqueta shape-data-item (es decir, al pasar visGraphicPropertyLabel para el parámetro Field), debe incluir la etiqueta entre llaves ({}). Por ejemplo, si desea pasar el nombre del elemento de datos de formas "Cost", debe escribirlo así: {Cost}.

Haga referencia a los datos de forma de una forma distinta de la a la que se aplica el gráfico de datos pasando el nombre de la forma seguida de un signo de exclamación (!) y, a continuación, el nombre del campo. Por ejemplo, en el siguiente ejemplo, para referirse al ancho de la forma denominada Ellipse.34, podría usar la siguiente sintaxis:

vsoGraphicItem.SetExpression visGraphicExpression, "Ellipse.34!Width"

Para poder editar un elemento gráfico, incluida la configuración de su cadena de expresión, debe usar el método Master.Open para abrir para editar una copia del patrón de gráficos de datos al que pertenece la colección GraphicItems del elemento gráfico. Una vez establecida la expresión del elemento gráfico y realizados los cambios necesarios, use el método Master.Close para confirmar los cambios.

Ejemplo:

La siguiente macro de Microsoft Visual Basic para Aplicaciones (VBA) muestra cómo utilizar el método SetExpression para establecer el valor de la cadena de expresión para un elemento de gráfico de datos. Abre una copia del objeto Master de tipo visTypeDataGraphic (comúnmente denominado gráfico de datos) denominado "Gráfico de datos" y, a continuación, establece la expresión del primer elemento gráfico de la colección GraphicItems del gráfico de datos para mostrar el ancho de cualquier forma a la que se aplique el gráfico de datos.

Nota:

Para determinar el nombre de un patrón de gráficos de datos existente, mueva el mouse sobre el patrón en el panel de tareas Gráficos de datos de la interfaz de usuario de Visio.

A continuación, cierra el patrón y utiliza el método GetExpression para obtener la última expresión aplicada para el elemento gráfico. Por último, imprime el tipo de campo y el valor de la expresión en la ventana Inmediato.

La macro supone que existe un gráfico de datos denominado "Gráfico de datos" en el documento actual. Para obtener más información sobre cómo agregar un patrón de gráficos de datos a la colección Masters del documento actual, vea Masters.AddEx.

Public Sub SetExpression_Example() 
 
    Dim vsoMaster As Visio.Master 
    Dim vsoMasterCopy As Visio.Master 
    Dim vsoGraphicItem As Visio.GraphicItem 
    Dim strExpression As String 
    Dim fieldType As VisGraphicField 
 
    Set vsoMaster = Visio.ActiveDocument.Masters("Data Graphic") 
    Set vsoMasterCopy = vsoMaster.Open 
    Set vsoGraphicItem = vsoMasterCopy.GraphicItems(1) 
       
    vsoGraphicItem.SetExpression visGraphicExpression, "Width" 
    vsoMasterCopy.Close 
     
    vsoMaster.GraphicItems(1).GetExpression fieldType, strExpression 
     
    Debug.Print "Field type is "; fieldType 
    Debug.Print "Expression is "; strExpression 
     
End Sub

Soporte técnico y comentarios

¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.