HELP: Unable to clear values for control of type text in a userfor

S

sam

Hi All,

I have textboxes and comboboxes located in Frame1 and I only want to clear
values in Textboxes when a user changes Student_Id field

Here is my code so far:

Private Sub StudentId_Change()

For Each ctl In Me.Frame1.Controls
If TypeOf ctl Is TextBox Then
ctl.Value = ""
End If
Next

End Sub

For some reason the values in textboxes are not cleared, I inserted break
points and found out that the control type of Textbox is not identified and
hence passes the If statement directly to End if

Thanks in advance
 
G

GS

sam brought next idea :
Hi All,

I have textboxes and comboboxes located in Frame1 and I only want to clear
values in Textboxes when a user changes Student_Id field

Here is my code so far:

Private Sub StudentId_Change()

For Each ctl In Me.Frame1.Controls
If TypeOf ctl Is TextBox Then
ctl.Value = ""
End If
Next

End Sub

For some reason the values in textboxes are not cleared, I inserted break
points and found out that the control type of Textbox is not identified and
hence passes the If statement directly to End if

Thanks in advance

The default property for a textbox is 'Text', so try:
ctl.Text = ""

regards,
 
B

B Lynn B

If you give your controls names that depend on the type of control they are,
then you can test the name. I'm not sure if there's a "technically correct"
naming convention for the various types, but I name my textboxes with a "tbx"
prefix, followed by some word that tells me what data the control is used
for. i.e. tbxStudentName, tbxAddr1. Then your test would be:

For Each Ctrl in Me.Frame1.Controls
If Left(Ctrl.Name, 3) = "tbx" Then Ctrl.Value = ""
Next Ctrl
 
J

john

Sam,
try it this way:

Private Sub StudentId_Change()
Dim ctl As Control
Dim CtrlType As String

For Each ctl In Me.Frame1.Controls
CtrlType = TypeName(ctl)

If CtrlType = "TextBox" Then

ctl.Value = ""

End If

Next ctl

End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top