ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   How to write an If Then VBA (https://www.excelbanter.com/excel-programming/368777-how-write-if-then-vba.html)

marcie

How to write an If Then VBA
 
I am having trouble writing an If Then VBA that inserts the correct info into
my worksheet. See code below. I have a userform tha inserts all the info in
the correct rows but does not give me my answer.

Private Sub CommandButtonOk_Click()
If TextBoxName.Text = "" Then
MsgBox "You must enter a name."
Exit Sub
End If
NextBlankRow = Application.WorksheetFunction.CountA(Range("ColA") ) + 1
'MsgBox (NextBlankRow)
Cells(NextBlankRow, 1) = TextBoxName.Text
Cells(NextBlankRow, 2) = TextBoxAge.Text

If TextBoxAge = 3 And TextBoxAge <= 12 Then
Events = "Kids"
ElseIf TextBoxAge = 13 And TextBoxAge <= 19 Then
Events = "Teens"
ElseIf TextBoxAge = 20 And TextBoxAge <= 49 Then
Events = "Adults"
ElseIf TextBoxAge = 50 Then
Events = "Seniors"
End If

TextBoxName.Text = ""

In Excel I have Column 3 named Events and when I type the name and age I
would like the the event column filled in based on the above data.

Can anyone help?
TextBoxAge.Text = ""

TextBoxName.SetFocus

End Sub

Tom Ogilvy

How to write an If Then VBA
 
Private Sub CommandButtonOk_Click()
Dim events as String

.. . .

Cells(NextBlankRow, 2) = TextBoxAge.Text

If TextBoxAge = 3 And TextBoxAge <= 12 Then
Events = "Kids"
ElseIf TextBoxAge = 13 And TextBoxAge <= 19 Then
Events = "Teens"
ElseIf TextBoxAge = 20 And TextBoxAge <= 49 Then
Events = "Adults"
ElseIf TextBoxAge = 50 Then
Events = "Seniors"
End If

cells(NetBlankRow,Range("Events").Column).Value = events

--
Regards,
Tom Ogilvy

"Marcie" wrote in message
...
I am having trouble writing an If Then VBA that inserts the correct info
into
my worksheet. See code below. I have a userform tha inserts all the info
in
the correct rows but does not give me my answer.

Private Sub CommandButtonOk_Click()
If TextBoxName.Text = "" Then
MsgBox "You must enter a name."
Exit Sub
End If
NextBlankRow = Application.WorksheetFunction.CountA(Range("ColA") ) + 1
'MsgBox (NextBlankRow)
Cells(NextBlankRow, 1) = TextBoxName.Text
Cells(NextBlankRow, 2) = TextBoxAge.Text

If TextBoxAge = 3 And TextBoxAge <= 12 Then
Events = "Kids"
ElseIf TextBoxAge = 13 And TextBoxAge <= 19 Then
Events = "Teens"
ElseIf TextBoxAge = 20 And TextBoxAge <= 49 Then
Events = "Adults"
ElseIf TextBoxAge = 50 Then
Events = "Seniors"
End If

TextBoxName.Text = ""

In Excel I have Column 3 named Events and when I type the name and age I
would like the the event column filled in based on the above data.

Can anyone help?
TextBoxAge.Text = ""

TextBoxName.SetFocus

End Sub




marcie

How to write an If Then VBA
 
Tom,

Thank you so much. It worked. I knew I was missing something, just didn't
know what.
Marcie

"Tom Ogilvy" wrote:

Private Sub CommandButtonOk_Click()
Dim events as String

.. . .

Cells(NextBlankRow, 2) = TextBoxAge.Text

If TextBoxAge = 3 And TextBoxAge <= 12 Then
Events = "Kids"
ElseIf TextBoxAge = 13 And TextBoxAge <= 19 Then
Events = "Teens"
ElseIf TextBoxAge = 20 And TextBoxAge <= 49 Then
Events = "Adults"
ElseIf TextBoxAge = 50 Then
Events = "Seniors"
End If

cells(NetBlankRow,Range("Events").Column).Value = events

--
Regards,
Tom Ogilvy

"Marcie" wrote in message
...
I am having trouble writing an If Then VBA that inserts the correct info
into
my worksheet. See code below. I have a userform tha inserts all the info
in
the correct rows but does not give me my answer.

Private Sub CommandButtonOk_Click()
If TextBoxName.Text = "" Then
MsgBox "You must enter a name."
Exit Sub
End If
NextBlankRow = Application.WorksheetFunction.CountA(Range("ColA") ) + 1
'MsgBox (NextBlankRow)
Cells(NextBlankRow, 1) = TextBoxName.Text
Cells(NextBlankRow, 2) = TextBoxAge.Text

If TextBoxAge = 3 And TextBoxAge <= 12 Then
Events = "Kids"
ElseIf TextBoxAge = 13 And TextBoxAge <= 19 Then
Events = "Teens"
ElseIf TextBoxAge = 20 And TextBoxAge <= 49 Then
Events = "Adults"
ElseIf TextBoxAge = 50 Then
Events = "Seniors"
End If

TextBoxName.Text = ""

In Excel I have Column 3 named Events and when I type the name and age I
would like the the event column filled in based on the above data.

Can anyone help?
TextBoxAge.Text = ""

TextBoxName.SetFocus

End Sub






All times are GMT +1. The time now is 10:29 AM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com