Compartir a través de


Método Master.Open (Visio)

Abre un patrón existente para que pueda modificarse.

Sintaxis

expresión. Abierto

Expresión Variable que representa un objeto Master .

Valor devuelto

Master

Comentarios

Use el método Open para un objeto Master junto con el método Close para editar de forma confiable las formas y celdas de un patrón. En algunas versiones anteriores de Visio, se podían editar las formas y las celdas de un objeto Master, pero los cambios no se aplicaban a las instancias del patrón y la información del cuadro de alineación mostrada al crear instancias del patrón editado no era correcta.

Para editar las formas y las celdas de un objeto Master desde un programa

  1. Abra el objeto Master para su edición mediante masterObjCopy = masterObj. Abra. Este código produce un error si existe una ventana de dibujo abierta en masterObj o si otros programas ya han abierto masterObj. Si el método Open se ejecuta correctamente, masterObjCopy es una copia de masterObj.

  2. Cambie las formas y celdas de masterObjCopy , no masterObj.

  3. Cierre el objeto Master utilizando masterObjCopy. Cerrar. Se produce un error en el método Close si masterObjCopy no es un objeto Master resultado de una llamada masterObj. Abra la llamada. De lo contrario, el método Close combina los cambios realizados en el paso 2 desde masterObjCopy en masterObj. También actualiza todas las instancias de masterObj para que reflejen los cambios y actualicen la información almacenada en caché en masterObj. Si masterObj. IconUpdate no es visManual (0), el método Close actualiza el icono mostrado en la ventana de galería de símbolos para masterObj con objeto de representar una imagen de masterObjCopy.

Si cambia directamente las formas y las celdas de un patrón, en lugar de abrir y cerrar éste tal como se describe en el procedimiento anterior, no se producirán los efectos descritos en el paso 3.

Un programa que cree una copia de un masterObj para su edición debería cerrar y liberar dicha copia. Normalmente, Microsoft Visual Basic la libera automáticamente. Sin embargo, cuando se está creando código en C o C++, es necesario liberar la copia de forma explícita, de igual forma que cualquier otro objeto.

Nota:

A partir de Microsoft Office Visio 2003, solo se pueden editar las galerías de símbolos creadas por el usuario. De forma predeterminada, las galerías de símbolos de Visio no son editables.

Ejemplo:

Esta macro de Microsoft Visual Basic para Aplicaciones (VBA) muestra cómo abrir un objeto Master para su edición. Abre una copia de un patrón desde la galería de símbolos del documento y cambia el color de relleno del primer plano del patrón y de todas las formas del dibujo derivadas del patrón.

Antes de ejecutarla, cierre todos los documentos abiertos de Visio. A continuación, haga clic en la pestaña Archivo , haga clic en Nuevoy, a continuación, haga clic en Crear para abrir un nuevo documento basado en ninguna plantilla. Use la herramienta Rectángulo para dibujar un rectángulo en la página de dibujo. Abra la galería de símbolos del documento (en la ventana Formas, elija Más formas y haga clic en Mostrar galería de símbolos del documento) y, a continuación, arrastre la forma rectangular a dicha galería para crear un patrón. Finalmente, arrastre varias copias del patrón rectangular a la página de dibujo.

 
Public Sub OpenMaster_Example() 
 
    Dim vsoMaster As Visio.Master 
    Dim vsoMasterCopy As Visio.Master 
    Dim vsoShape As Visio.Shape 
    Dim vsoCell As Visio.Cell 
 
    Set vsoMaster = Visio.Documents.Masters(1) 
    Set vsoMasterCopy = vsoMaster.Open 
 
    Set vsoShape = vsoMasterCopy.Shapes.Item(1) 
 
    Set vsoCell = vsoShape.CellsU("FillForegnd") 
    vsoCell.Formula = 9 
 
    vsoMasterCopy.Close 
 
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.