投稿日 | : 2003/06/05(Thu) 21:38 |
投稿者 | : シャフト |
Eメール | : |
URL | : |
タイトル | : Re: マルチタスクを判別して処理をするには? |
Form1にはCommand1とCommand2が貼り付けてあり、
Form2にはtext1が貼り付けてあるのですよね。
Private Sub Command2_Click()
Dim frm As New Form2
frm.text1 = "hello"
frm.Show '←追加
end Sub
と、frm.Showを追加すれば新しくForm2が作成され、
Form2のtext1に"hello"と表示されると思います。
ただ、おそらくやりたいのはCommand1で作成したForm2の内の
いづれかのtext1に"hello"と表示させたいのだと思うので、
サンプルとして下の様にしてみてはどうでしょう?
Form1にLabel1とText1を貼り付けてください。
Private Sub Command1_Click()
Dim frm As New Form2
Static lForm2Num As Long
frm.Show
lForm2Num& = lForm2Num& + 1&
Me.Label1.Caption = CStr(lForm2Num&)
End Sub
Private Sub Command2_Click()
Dim frm As Form2
Dim lShowForm2Num As Long
lShowForm2Num& = CLng(Me.Text1.Text)
If lShowForm2Num& > CLng(Me.Label1.Caption) Then
Call MsgBox("指定番号のフォームは作成されていません", vbOKOnly)
Exit Sub
End If
Set frm = Forms(lShowForm2Num&)
frm.Text1 = "hello"
End Sub
Form1のラベルに表示されている数字より小さい数字を
Form1のテキストボックスに入力してください。