View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
BRC[_2_] BRC[_2_] is offline
external usenet poster
 
Posts: 19
Default stop calling sub Intentionally without error.

On Jan 12, 11:30*am, BRC wrote:
On Jan 12, 10:53*am, Chip Pearson wrote:





You should write your Sub_2 as a Function procedure that returns True
if execution is to continue or False if execution should cease. E.g.,


Function Proc2()
* * * * If Range("SomeRange").Rows.Count < 50 Then
* * * * * * * * Proc2 = False
* * * * Else
* * * * * * * * Proc2 = True
* * * * End If
End Function


Then, in Sub_1,


Sub Sub_1()
* * * * Dim Continue As Boolean
* * * * Continue = Proc2()
* * * * If Continue = False Then
* * * * * * * * Exit Sub
* * * * End If
* * * * ' more code
End Sub


Cordially,
Chip Pearson
Microsoft MVP 1998 - 2010
Pearson Software Consulting, LLCwww.cpearson.com
[email on web site]


On Tue, 12 Jan 2010 10:43:24 -0800 (PST), BRC


wrote:
Hi all,
I am trying to find a way to stop all sub's from running if certain
conditions are encountered. sin the example below, if row count is
less than 50 I would like to stop sub_1 from running. *All of the
posts i find on this subject are related to errors. this isn't really
an error just a condition. *Thanks for any advice. BRC


sub _1()
call sub_2
do some stuff
end sub


sub_2()
if range ("somerange").rows.count <50 then
msgbox("Less than 50 rows")
exit sub
else
end sub- Hide quoted text -


- Show quoted text -


thank you for the quick responses. *I thought i read somewhere that
using smaller sections of code where more efficient and make debug
easier. *also I thouht that having several sub routines *to do
differnt things might be a better approach then writing one long
macro. *Given all that, *Chip I am not sure how Sub Sub_1() in your
example knows that the Function Proc2() ended in true (or false).
Thanks again for the help- Hide quoted text -

- Show quoted text -


Never mind, I see how that happens. Thanks again.