[リストへもどる]
一括表示

投稿時間:2004/03/10(Wed) 17:01
投稿者名:kamurin
Eメール:kamurin@hotmail.com
URL :
タイトル:
formからformへ
ローカル変数だけで、
formからformへデータを渡したいのですが、好い方法在りませんか?


formAからformBをshowで表示し、
formBで得た情報Cを、
formAに渡す。

こんな感じのコトがしたいのです。
教えてください。

投稿時間:2004/03/10(Wed) 17:10
投稿者名:nobu
Eメール:
URL :
タイトル:
Re: formからformへ
> ローカル変数だけで、
> formからformへデータを渡したいのですが、好い方法在りませんか?

通常、そう言う場合には 標準モジュール Module1.bas に
Public で宣言して使用します。
「ローカル変数だけ」にこだわる理由は何ですか?

どうしてもなら、formB でファイルに書き出して
formA でファイルを読み込みますか? かえって面倒ですよ。

変数の有効範囲、スコープについて調べて下さい。

投稿時間:2004/03/10(Wed) 17:24
投稿者名:とろ
Eメール:
URL :
タイトル:
Re^2: formからformへ
> 通常、そう言う場合には 標準モジュール Module1.bas に
> Public で宣言して使用します。

私ならば、FormB に Public 変数を用意しますね。
# 別に標準モジュールでなくても大丈夫です。

-- サンプルコード --
FormA(StartUp), FormB を用意し、
各フォームに Command1, Text1 を配置して実行してみて下さい。

'FormA
Option Explicit
Private Sub Command1_Click()
  Dim frm As FormB
  Set frm = New FormB
  frm.Show vbModal
  Text1.Text = frm.wDataC
  Set frm = Nothing
End Sub

'FormB
Option Explicit
Public wDataC As String
Private Sub Command1_Click()
  wDataC = Text1.Text
  Unload Me
End Sub

投稿時間:2004/03/10(Wed) 21:21
投稿者名:ねろ
Eメール:
URL :
タイトル:
Re^4: formからformへ
私なら、FormAの上に非表示でTextBox1を置いて

FormBから
FormA.Text1.Text="harehorehirara"とやりますが

FormAの受けとる方は
Private Sub Text1_Change()
    Debug.Print "データ-来たよ" & Text1.Text
End Sub
これでOk、宣言は何も無し、簡単ですよ。

投稿時間:2004/03/10(Wed) 20:02
投稿者名:kamurin
Eメール:kamurin@hotmail.com
URL :
タイトル:
Re: formからformへ
nobuさん・とろさん・akさん・ねろさん
有難うございました。
早速試してみました。
OKです。