Função RUNADDON

Executa um complemento ou uma macro em um projeto do Microsoft Visual Basic for Applications (VBA).

Sintaxe

RUNADDON(" cadeia de caracteres ")

Parâmetros

Name Obrigatório/opcional Tipo de dados Descrição
cadeia de caracteres
Obrigatório
String
O nome de um complemento na coleção Addons ou de uma macro em um projeto VBA.

Comentários

Se o projeto do documento que contém a chamada da função RUNADDON (ou outro projeto se for referenciado) não tiver uma macro (um procedimento sem argumentos) denominada string, o Microsoft Visio executará o complemento chamado string. Se nenhum complemento string for encontrado, o Visio não fará nada e não relatará erros. (Você pode usar a propriedade TraceFlags para monitorar os procedimentos e complementos que o Visio tenta executar.)

Ao chamar um procedimento em um módulo padrão, é recomendado prefixar a cadeia de caracteres com o nome do módulo que contém o procedimento (por exemplo, moduleName.procName) porque mais de um módulo pode ter um procedimento com o mesmo nome.

Para chamar um procedimento em um projeto diferente daquele do documento que contém a chamada da função RUNADDON, use a sintaxe projName.modName.procName (é necessário ter definido explicitamente uma referência ao projName no projeto VBA).

Observação

Iniciando com o Visio 2002, a função RUNADDON não pode executar uma sequência de caracteres contendo código VBA arbitrário. Códigos que tenham anteriormente passado para a função RUNADDON podem ser movidos para um procedimento no projeto VBA de um documento que é chamado a partir da função RUNADDON.

Para obter mais informações sobre a execução de códigos no Visio, consulte Sobre configurações de segurança e execução de códigos no Visio nesta Referência da ShapeSheet.

Em versões anteriores do Visio, essa função aparece como _RUNADDON. As versões 4.0 e posteriores do Visio aceitam os dois estilos.

Exemplo 1

RUNADDON("Calendar.exe")

Inicia um complemento chamado Calendar.exe.

Exemplo 2

RUNADDON("Arranjar Formas")

Inicia o complemento (implementado em VSL) cujo nome é Arranjar formas.

Exemplo 3

RUNADDON("ThisDocument.ReportStatistics")

Chama a macro ReportStatistics no módulo EsteDocumento no projeto do documento contendo essa chamada de função.

Observação

Para invocar a macro no módulo ThisDocument, anteceda a cadeia de caracteres com "EsteDocumento" como mostrado.

Exemplo 4

RUNADDON(" ModuleName . ReportStatistics")

Chama a macro ReportStatistics no ModuleName no projeto do documento contendo essa chamada de função.