|
おはようございます
>
>テキストボックスの表示方法について悩んでおります。
>
>シート2上に入力した数値 仮にA1セルに1、B2セルに2が入力してあるとします。
>
>それをシート1のA2をクリックしたときに【1】を、C1をクリックしたときに【2】を作成したユーザーフォーム上のテキストボックスを出現させ表示させたいのですがどうすればいいでしょうか。
仮にユーザーフォーム名が UserForm1
そこに貼り付けられたテキストボックスをTextBox1とした場合、
本当は、
Userform1.Show(Worksheets("シート2").range("a1").value)
なんてパラメータで送ることができればよいですよね!!
でも、できないので・・・。
このUserForm1に独自のプロパティを作ってしまいましょう。
プロパティ名は、 SetTXt1
With userform1
.SetTxt1=Worksheets("シート2").range("a1").value
.Show
End with
こんな呼び出しが出来れば、何となく自分で作ったオブジェクトみたいですよね!!
UserForm1側は、
Option Explicit
Property Let SetTxt1(ByVal myvalue As Variant)
TextBox1.Value = myvalue
End Property
このようにしておけばよいと思います。
尚、Userform1では、
UserForm_Initializeイベントが先に実行されますので、
その点だけ注意してください
|
|