ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Stop (halt, break) my vba code please... (https://www.excelbanter.com/excel-programming/392404-stop-halt-break-my-vba-code-please.html)

Jock

Stop (halt, break) my vba code please...
 
The following code will show a message box if any text boxes on a user form
are empty:

Private Sub CommandButton1_Click()

Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes")
End If
End If
Next

I would like the code to then stop once the "ok" button on the message box
is hit. Currently, it continues once the button is clicked.

I've lost some hair over this one.....
--
tia

Jock

[email protected]

Stop (halt, break) my vba code please...
 
On Jun 29, 11:52 am, Jock wrote:
The following code will show a message box if any text boxes on a user form
are empty:

Private Sub CommandButton1_Click()

Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes")
End If
End If
Next

I would like the code to then stop once the "ok" button on the message box
is hit. Currently, it continues once the button is clicked.

I've lost some hair over this one.....
--
tia

Jock


If you want the code to "stop" you can simply add an Exit Sub
statement where appropriate. Keep in mind that it partially depends
on whether you want the information on the form to be in memory or
not. Search the VBE Help for Unload and Hide for starters.

Matt


Mike H

Stop (halt, break) my vba code please...
 
Jock,

Have iseen this code somewhere before!! Ty this:-

Private Sub CommandButton1_Click()
Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes"): Exit Sub
End If
End If
Next
End Sub

Mike

"Jock" wrote:

The following code will show a message box if any text boxes on a user form
are empty:

Private Sub CommandButton1_Click()

Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes")
End If
End If
Next

I would like the code to then stop once the "ok" button on the message box
is hit. Currently, it continues once the button is clicked.

I've lost some hair over this one.....
--
tia

Jock


Jock

Stop (halt, break) my vba code please...
 
Hi Mike,
yes, I think it's yours!!!
Thanks for the 'tweak', off home now so I'll give it a go on Monday. Many
thanks.
Cheers.


Jock


"Mike H" wrote:

Jock,

Have iseen this code somewhere before!! Ty this:-

Private Sub CommandButton1_Click()
Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes"): Exit Sub
End If
End If
Next
End Sub

Mike

"Jock" wrote:

The following code will show a message box if any text boxes on a user form
are empty:

Private Sub CommandButton1_Click()

Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes")
End If
End If
Next

I would like the code to then stop once the "ok" button on the message box
is hit. Currently, it continues once the button is clicked.

I've lost some hair over this one.....
--
tia

Jock


JLGWhiz

Stop (halt, break) my vba code please...
 
Jock, when you return on Monday, you will find that using "exit sub" while in
the click event will only take you back to the main procedure. So what you
need is a Goto command with a label set up to exit the main procedu

'In the click event
Goto FINISH:

'In the main procedure
FINISH:
Exit Sub

You can put the finish label just before the normal Exit Sub statement in
the main procedure and it should work just fine.

"Jock" wrote:

Hi Mike,
yes, I think it's yours!!!
Thanks for the 'tweak', off home now so I'll give it a go on Monday. Many
thanks.
Cheers.


Jock


"Mike H" wrote:

Jock,

Have iseen this code somewhere before!! Ty this:-

Private Sub CommandButton1_Click()
Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes"): Exit Sub
End If
End If
Next
End Sub

Mike

"Jock" wrote:

The following code will show a message box if any text boxes on a user form
are empty:

Private Sub CommandButton1_Click()

Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes")
End If
End If
Next

I would like the code to then stop once the "ok" button on the message box
is hit. Currently, it continues once the button is clicked.

I've lost some hair over this one.....
--
tia

Jock


JLGWhiz

Stop (halt, break) my vba code please...
 
Correction:
You can put the finish label just before the normal End Sub statement in
the main procedure and it should work just fine.



"Jock" wrote:

Hi Mike,
yes, I think it's yours!!!
Thanks for the 'tweak', off home now so I'll give it a go on Monday. Many
thanks.
Cheers.


Jock


"Mike H" wrote:

Jock,

Have iseen this code somewhere before!! Ty this:-

Private Sub CommandButton1_Click()
Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes"): Exit Sub
End If
End If
Next
End Sub

Mike

"Jock" wrote:

The following code will show a message box if any text boxes on a user form
are empty:

Private Sub CommandButton1_Click()

Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes")
End If
End If
Next

I would like the code to then stop once the "ok" button on the message box
is hit. Currently, it continues once the button is clicked.

I've lost some hair over this one.....
--
tia

Jock


Jock

Stop (halt, break) my vba code please...
 
Sorted now. Thanks for all your input guys.
Much appreciated--
Jock


"Jock" wrote:

Hi Mike,
yes, I think it's yours!!!
Thanks for the 'tweak', off home now so I'll give it a go on Monday. Many
thanks.
Cheers.


Jock


"Mike H" wrote:

Jock,

Have iseen this code somewhere before!! Ty this:-

Private Sub CommandButton1_Click()
Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes"): Exit Sub
End If
End If
Next
End Sub

Mike

"Jock" wrote:

The following code will show a message box if any text boxes on a user form
are empty:

Private Sub CommandButton1_Click()

Dim TB As Control
For Each TB In UserForm1.Controls
If TB.Name Like "TextBox*" Then
If TB.Value = "" Then
MsgBox ("Please fill all boxes")
End If
End If
Next

I would like the code to then stop once the "ok" button on the message box
is hit. Currently, it continues once the button is clicked.

I've lost some hair over this one.....
--
tia

Jock



All times are GMT +1. The time now is 06:41 PM.

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