|
かみちゃん さん、snoopy さん、こんばんは。
>最初から6つ用意しておいて、4つめ、5つめ、6つめのテキストボックスの
>Visible プロパティをFalseにしておいてはいけませんか?
増える数が3つで終わりなら、私も↑に賛成です。
しかし、このような増加を繰り返し行う仕様なら・・・、
'==========================================================
Private crt_txt As Boolean
Private txt(1 To 3) As MSForms.TextBox
Private Sub TextBox3_KeyDown(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = 13 Then
If crt_txt = False Then
For idx = 1 To 3
Set txt(idx) = Controls.Add("Forms.TextBox.1", "txt" & idx, True)
With txt(idx)
.Top = 25 * (idx - 1) + 50
.Height = 24
.Left = 150
'位置の値は適当に変更してください
End With
Next idx
crt_txt = True
End If
End If
End Sub
一例としては、こんな方法がありますが・・・。
作成したテキストボックスのイベントプロシジャーも必要ですよね!!
その場合は、クラスモジュールの使用も考えなければなりません。
かみちゃん さんの方法なら、通常のイべントプロシジャーの
記述でいけそうですね!!
繰り返しますが、テキストボックスの増加が一回だけなら
予めテキストボックスを作成しておいて
>Visible プロパティをFalse
の方法だと思います。
|
|