Application.DDEInitiate Method (Word)

Office 2013 and later
GitHub-Mark-64px

Contribute to this content

Use GitHub to suggest and submit changes. See our guidelines for contributing to VBA documentation.

Opens a dynamic data exchange (DDE) channel to another application, and returns the channel number.

expression .DDEInitiate(App, Topic)

expression A variable that represents an Application object.

Parameters

Name

Required/Optional

Data Type

Description

App

Required

String

The name of the application.

Topic

Required

String

The name of a DDE topic?for example, the name of an open document?recognized by the application to which you are opening a channel.

Security noteSecurity Note
Dynamic data exchange (DDE) is an older technology that is not secure. If possible, use a more secure alternative to DDE, such as object linking and embedding (OLE).

If it is successful, the DDEInitiate method returns the number of the open channel. All subsequent DDE functions use this number to specify the channel.

This example initiates a DDE conversation with the System topic and opens the Microsoft Office Excel workbook Sales.xls. The example terminates the DDE channel, initiates a channel to Sales.xls, and then inserts text into cell R1C1.

Dim lngChannel As Long 
 
lngChannel = DDEInitiate(App:="Excel", Topic:="System") 
DDEExecute Channel:=lngChannel, Command:="[OPEN(" & Chr(34) _ 
 & "C:\Sales.xls" & Chr(34) & ")] 
DDETerminate Channel:=lngChannel 
lngChannel = DDEInitiate(App:="Excel", Topic:="Sales.xls") 
DDEPoke Channel:=lngChannel, Item:="R1C1", Data:="1996 Sales" 
DDETerminate Channel:=lngChannel
Show: