DDE 関数を使用して、別のアプリケーションと動的データ交換 (DDE) 通信を開始して、情報のアイテムをアプリケーションから要求し、フォームまたはレポートのコントロールにその情報を表示することができます。
たとえば、テキスト ボックスの ControlSource プロパティの DDE 関数を使用して、Excel ワークシート内の指定したセルのデータを表示できます。
構文
DDE( application, topic, item )
DDE 関数構文の引数は次のとおりです。
引 数 |
説明 |
---|---|
application |
DDE 通信に参加できるアプリケーションを示す 文字列式 です。 通常、application は、Excel などの Microsoft Windows ベースのアプリケーションの実行可能ファイル (.exe 拡張子なし) の名前です。 たとえば、Excel で DDE 通信を開始するには、 application 引数に "Excel" と入力します。 |
topic |
application によって認識されるトピックの名前である文字列式です。 通常、topic 引数は、ドキュメントまたはデータ ファイルです。 可能なトピックのリストについては、その他のアプリケーションのドキュメントをご確認ください。 |
item |
application によって認識される データ項目 の名前である文字列式です。 可能性のあるアイテムのリストについては、その他のアプリケーションのドキュメントをご確認ください。 |
解説
DDE 関数が、指定された application および topic で DDE 対話を開始しようとして、item のデータを要求しています。 成功した場合、DDE 関数は、要求された情報を含む文字列を返します。
たとえば、Excel からのデータを要求している場合、item は、"R1C1" あるいはセルの範囲の名前など、行と列の識別子である可能性があります。 次の例では、DDE 関数は Excel ワークシートの行 1、列 1 のセルからの情報を要求しています。 コントロールのプロパティ シートにある ControlSource プロパティ ボックスのテキスト ボックス コントロールに、この式を入力できます。
=DDE("Excel", "Sheet1", "R1C1")
テキスト ボックス、オプション グループ、チェック ボックス、またはコンボ ボックスの ControlSource プロパティの設定にのみ、DDE 関数を使用することができます。 Visual Basic for Applications (VBA) モジュールから DDE 関数を呼び出すことはできません。
DDE 関数を使用すると、コントロールはフォーム ビューと印刷プレビューで読み取り専用になります。 たとえば、テキスト ボックスで DDE 関数を使用している場合、テキスト ボックス内のテキストを編集することはできません。 テキストの編集は、別のアプリケーションで行う必要があります。 ControlSource プロパティはフォーム ビューと印刷プレビューでも読み取り専用であるため、コントロールへの変更はデザイン ビューで行う必要があります。
Microsoft Windows と、使用しているコンピューターのメモリおよびリソースによって、同時に開くことができる DDE 通信の最大数が決まります。 別の application が実行されていなかったり、topic を認識しなかったり、または通信の最大数に既に達していたりするために、通信を開始できない場合、DDE 関数は Null を返します。
注: もう 1 つのアプリケーションは、DDE 会話の要求を無視するように構成できます。 その場合、 DDE 関数は Null を返します。 同様に、他のアプリケーションからの要求を無視するように Access を設定できます。[ファイル] メニューの [アクセス オプション] をクリックし、[アプリケーション設定] ダイアログ ボックスで [詳細設定] をクリックします。 [ DDE 操作] で、[ DDE 要求を無視する] を選択します。
ヒント
Access から別のアプリケーションのオブジェクトを操作する必要がある場合は、オートメーションの使用をお勧めします。
次の表では、各コントロールと共に使用するときに、DDE 関数がどのように動作するかを示しています。
コン トロール |
解説 |
---|---|
テキスト ボックス |
item 引数は、文字列または数値を指定できます。 item が複数のセルを含む Excel ワークシートの名前付き範囲などの複数の情報を参照する場合、DDE 関数は最初のエントリを返します。 この関数をテキスト ボックスで使用して、ワークシートのセルに含まれたデータを表示することができます。 |
コンボ ボックス |
DDE 関数は、item が参照する情報をコンボ ボックスに入力できます。 ボックスのテキスト部分にデータを入力することはできません。 DDE 関数をコンボ ボックスで使用して、Excel ワークシートに保存されている国/地域の一覧を表示することができます。 |
オプション グループ |
オプション グループ内にある各オプション ボタンの OptionValue プロパティは、数値に設定されています。 通常、最初のボタンの値は 1、2 つ目のボタンは 2 というように設定されています。 DDE 関数の返す数値で、使用するオプション ボタンが決まります。 たとえば、DDE 関数が 2 を返す場合、2 番目のボタンが選択されます。 この関数が OptionValue プロパティ設定のどれにも一致しない値を返す場合、ボタンは選択されません。 item が複数のセルを含む Excel ワークシートの名前付き範囲などの複数の情報を参照する場合、DDE 関数は最初のエントリを返します。 |
チェック ボックス |
DDE 関数が 0 を返す場合、チェック ボックスはクリアになります。 この関数が 1 または – 1 などの 0 以外の数値を返す場合は、ボックスが選択されます。 item がテキストを参照したり、複数のセルを含む Excel ワークシートの名前付き範囲などの複数の情報を参照したりする場合、チェック ボックスは使用できません。 |