I would do it as follows:
'============================
'frm: The User Form to add the TextBox to
'name: the name assigned to the TextBox
'x: Position from left edge in pixels
'y: Position from top edge in pixels
Public Sub addTextBox(ByVal frm As UserForm, ByVal name As String,
ByVal x As Integer, ByVal y As Integer) As MSForms.TextBox
Dim txt As MSForms.TextBox
Set txt = frm.Controls.Add("Forms.TextBox.1", name, True)
With txt
.Top = y
.Left = x
End With
End Sub
'============================
If you call this sub like so:
addTextBox(UserForm1, "MyTextBox", 10, 20)
....you will be able to extract values as follows:
UserForm1.Controls("MyTextBox").Text
Let me know if that meets your needs.
Regards,
Steve
divya schrieb:
> Can any body help me with the code used to dynamically create textboxes
> during run time .
> I am having 2 textboxes Name and Phone number , Aligned side by side.
> Now if user wants to add another person's contact details he will click
> on button with caption "+" .I want that when he clicks on this button
> two textboxes Name and Phone number shouls appear below the previous
> Name and Phone Number text box.
> III'ly if he wants to add one more person's name and contact he will
> again click on the "+" button and then again 2 new text boxes should
> appear below the 2nd person's text boxes.
>
> Kindly help me with how to give the position of the textboxes to be
> created during run time,how to make them and later how to access the
> values of these dynamically created textboxes .
|