Running Word for Windows Macro from Visual Basic Program

ID: Q74653


The information in this article applies to:
  • Microsoft Word for Windows, versions 1.0, 1.1, 1.1a, 2.0, 2.0a, 2.0a-CD, 2.0b, 2.0c, 6.0, 6.0a, 6.0c
  • Microsoft Word for Windows 95, version 7.0


SUMMARY

It is possible to write a Visual Basic program to communicate with Microsoft Word for Windows using DDE (Dynamic Data Exchange). The following example displays the syntax necessary to run a Word for Windows macro from a Visual Basic application:

Const COLD = 2
Const NONE = 0
Const HOT = 1

   Sub Compic2_Click ()
   compic2.LinkTopic = "WinWord|system"
   compic2.LinkMode = COLD
   a% = DoEvents()
   compic2.LinkExecute [Hellomacro]
   compic2.LinkMode = NONE
   End Sub 


MORE INFORMATION

The most important part of this macro from the Word for Windows viewpoint is the syntax to communicate with Word for Windows specifically. The command that actually executes the macro is the .LinkExecute command. This is the Visual Basic equivalent of the DDEExecute in Word for Windows. The correct lines of code to run a Word for Windows macro should follow this syntax:


   compic2.LinkTopic = "WinWord|system"
   compic2.LinkMode= either HOT OR COLD
   compic2.LinkExecute [Macroname]
   (you should always close the link as the example does) 


REFERENCES

"Microsoft Visual Basic Programmer's Guide," pages 354-376

Additional query words: winword2 6.0 1.x 2.0 winword word7 word6 7.0 word95

Keywords :
Version : WINDOWS:1.0,1.1,1.1a,2.0,2.0a,2.0a-CD,2.0b,2.0c,6.0,6.0a,6.0c,7.0
Platform : WINDOWS
Issue type :


Last Reviewed: October 4, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.