本ページは公開が終了した情報の複製であり、掲載時点での情報です。本ページに記載されている内容について各所に問い合わせることはご遠慮下さい。
サポート技術情報

[XL]VBW アプリケーションのテキスト ボックスに値を送出する方法

文書番号: 402461

最終更新日: 1997/10/20


この資料は以下の製品について記述したものです。


この記事は、以前は次の ID で公開されていました: JP402461

概要

本文書は、Microsoft(R) Visual Basic(R) Programming System Applications
Edition (以下 VBA) を使用して、Microsoft(R) Visual Basic(R) Programming
System for Windows(R) Version 2.0 (以下 VBW) で作成したアプリケーション
(以下 VBW アプリケーション) の特定のコントロールに値を送出する方法をサン
プル モジュールと共に解説しています。

詳細

VBW アプリケーションの特定のコントロールへ値を送出する方法についての詳細は、 「 Visual Basic(R) ユーザーズ ガイド (Excel 5.0 に添付) 」 253 ページ「 DDE の 使い方」を参照してください。

1. DDE の開始

DDE を使ってデータ交換を行うときには、最初に他のアプリケーションと接続する
必要があります。
  channelNumber = DDEInitiate(applicationname,topicname)

channelNumber

DDEInitiate メソッドによって接続された、DDE チャネルを格納するための変数を指 定します。

applicationname

プロジェクト名 (.MAK) を指定します。これは App オブジェクトの Exename プロパ ティ (App.Exename) で取得する名前と同じです。

topicname

アプリケーションのデータのトピックを指定します。データ交換を行う相手のコント ロール名を指定します (例えば、テキスト ボックスが含まれるフォーム オブジェクト の LinkTopic プロパティなど)。

2. 文字列と数値の送出

DDEPoke メソッドを使うと、DDEInitiate メソッドで接続したアプリケーションに対 して文字列や数値を送出できます。
  DDEPoke(channelNumber,item,text)

channelNumber

DDEInitiate メソッドによって接続された、DDE チャネル番号を指定します。

item

対象となるデータ (Name プロパティの値) を指定します。

text

送出する文字列 (データの入力されている Range オブジェクト) を指定します。

3. VBW アプリケーション側の注意

VBW アプリケーション側では、データ交換を行う相手のコントロールを含むフォーム オブジェクトの LinkMode プロパティを「 1 - ソース」に指定します。

サンプル モジュール

次のサンプル モジュールでは、Excel 5.0 のワークシート Sheet1 のセル A2 に入
力されている値を、 VBW アプリケーション PROJECT1.EXE のフォーム オブジェクト Form1 に配置されているテキスト ボックス Text1 に送出しています。

VBW 側の準備

  1. VBW を起動し、新規プロジェクトを表示します。
  2. Form1 のプロパティ LinkMode を 1 に変更します。
  3. Form1 に Text1 テキスト ボックスを作成します。

モジュール シートの記述

  Sub MyVB()
      ddechannel = Application.DDEInitiate("project1", "form1")
      Application.DDEPoke ddechannel, "Text1",  _
              WorkSheets("Sheet1").Range("A2")
      Application.DDETerminate ddechannel
  End Sub

Keywords: KBHOWTO KB402461
Technology: kbExcel500 kbExcelSearch kbExcelWinSearch

inserted by FC2 system