2010-10-13 30 views
5

¿Puedo vincular el código externo a un documento de Word? Tengo un montón de documentos de Word con macros (código VBA). Todo con el mismo código Me gustaría que el código se ejecute desde una fuente externa en lugar de desde todos esos documentos. De esa manera, si tengo que actualizar el código, solo tengo un lugar donde tengo que hacer la actualización.Ejecutar código vba externo en MS Word

Respuesta

2

Mueva el código a plantilla adjunta, luego las macros están disponibles en todos los documentos basados ​​en esa plantilla.

+0

Thaks para la respuesta! ¿Es esa la única manera de hacerlo? Estamos en una plataforma donde a veces experimentamos problemas cuando usamos otras teplates de lo normal.dot. – Daniel

+0

Si quiere usar el código VBA, eso es todo. Podría convertir el código en una palabra Plug in (VB6 o cualquier .net lang puede hacer eso), pero eso podría ser más allá de lo que realmente necesita. – DarinH

2

Puede crear una plantilla y ponerla en la carpeta% APPDATA% \ Microsoft \ Word \ STARTUP, esto hace que la plantilla sea un complemento y STARTUP sea una ubicación confiable que le dará menos problemas de seguridad que el uso de macros en plantillas de otros lugares

Luego, cualquier documento puede invocar una función en la plantilla mediante Application.Run().

p. Ej.

En la plantilla de escritura siguiente:

Function templateHello() As String 
    templateHello = "hello from template!" 
End Function 

Entonces, en cualquier documento de Word se puede escribir:

MsgBox Application.Run("templateHello") 

que mostrará un cuadro de mensaje con "hola de plantilla!"