Función RUNMACRO

Llama a una macro en un proyecto de Microsoft Visual Basic para Aplicaciones (VBA).

Sintaxis

RUNMACRO (macroname [, projname_opt ])

Parameters

Name Necesario/Opcional Tipo de datos Descripción
Nombremacro
Obligatorio
String
Nombre de la macro por llamar.
projname_opt
Opcional
String
Proyecto que contiene la macro.

Comentarios

Si se especifica un proyecto, Microsoft Visio busca en todos los documentos abiertos el que contiene el nombreproy_opc y llama a la nombremacro de ese proyecto. Si se omite el nombreproy_opc o su valor es nulo (""), se supone que nombremacro se encuentra en el proyecto VBA del documento que contiene la fórmula RUNMACRO que se está evaluando.

La función RUNMACRO se diferencia de la función CALLTHIS en el hecho de que no pasa a nombremacro una referencia a la forma propietaria de la fórmula evaluada. Al igual que CALLTHIS, la función RUNMACRO no requiere una referencia a projname_opt para llamar a ella.

El código VBA que se invoca cuando una copia de Visio evalúa una función RUNMACRO que forma parte de una fórmula no debe cerrar el documento que contiene la celda que utiliza la función, ya que, de hacerlo, se producirá un error de aplicación y la ejecución de Visio se terminará.

Si necesita cerrar el documento que contiene la celda que usa la función RUNMACRO, puede usar uno de los métodos siguientes:

  • Cerrar el documento mediante código que no sea de VBA.

  • Cerrar el documento desde un proyecto diferente al que se cierra.

  • Enviar mensajes de ventana para cerrar las ventanas del documento en lugar de cerrar el documento.

Para obtener más información acerca cómo ejecutar código en Visio, vea Acerca de la configuración de seguridad y la ejecución de código en Visio en esta Referencia de ShapeSheet.

Ejemplo

En el ejemplo siguiente, se invoca una macro llamada MiPrueba en el módulo de clase ThisDocument del proyecto VBA que contiene la fórmula RUNMACRO.

RUNMACRO ("ThisDocument.MiPrueba")