| 
    
     |  | おはようございます >
 >テキストボックスの表示方法について悩んでおります。
 >
 >シート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イベントが先に実行されますので、
 その点だけ注意してください
 
 
 |  |