ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Discussion (Misc queries) (https://www.excelbanter.com/excel-discussion-misc-queries/)
-   -   Question on VBA (https://www.excelbanter.com/excel-discussion-misc-queries/1180-question-vba.html)

Jeff

Question on VBA
 
Hi,

This is a partial copy of my VBA macro. My question is: Is possible in VBA
to execute a sub in an " If ... then statement?"

If TopCell Is Nothing Then
MsgBox myStr(iCtr) & " wasn't found"
Exit Sub --- here can I request the execution of sub instead of
Exit sub?
Else
.Range(TopCell, BotCell).Select
End If
Next iCtr
End With
Thanks,


Frank Kabel

Hi
you can call another sub. Just insert it instead of exit sub

--
Regards
Frank Kabel
Frankfurt, Germany

"Jeff" schrieb im Newsbeitrag
...
Hi,

This is a partial copy of my VBA macro. My question is: Is possible

in VBA
to execute a sub in an " If ... then statement?"

If TopCell Is Nothing Then
MsgBox myStr(iCtr) & " wasn't found"
Exit Sub --- here can I request the execution of sub

instead of
Exit sub?
Else
.Range(TopCell, BotCell).Select
End If
Next iCtr
End With
Thanks,



JE McGimpsey

One way:

With something
For iCtr = 1 to n
If TopCell Is Nothing Then
MsgBox myStr(iCtr) & " wasn't found"
MySub
Else
.Range(TopCell, BotCell).Select
End If
Next iCtr
End With
'...
End Sub


Public Sub MySub()
'Do something here
End Sub


In article ,
"Jeff" wrote:

Hi,

This is a partial copy of my VBA macro. My question is: Is possible in VBA
to execute a sub in an " If ... then statement?"

If TopCell Is Nothing Then
MsgBox myStr(iCtr) & " wasn't found"
Exit Sub --- here can I request the execution of sub instead of
Exit sub?
Else
.Range(TopCell, BotCell).Select
End If
Next iCtr
End With
Thanks,


Bob Phillips

Why didn't you just try it, you would have found out very easily.

--

HTH

RP
(remove nothere from the email address if mailing direct)


"Jeff" wrote in message
...
Hi,

This is a partial copy of my VBA macro. My question is: Is possible in VBA
to execute a sub in an " If ... then statement?"

If TopCell Is Nothing Then
MsgBox myStr(iCtr) & " wasn't found"
Exit Sub --- here can I request the execution of sub instead

of
Exit sub?
Else
.Range(TopCell, BotCell).Select
End If
Next iCtr
End With
Thanks,




George Nicholson

Yes, simply call the sub.

Keep in mind that once the newly called sub finishes executing, code
execution *returns* to the current sub, on the line following where it was
called.

You only provided partial code but it seems you are within a loop.

If you call NewSub IN PLACE of your ExitSub, the loop will continue after
NewSub finishes.

If you call NewSub BEFORE your ExitSub, then ExitSub will be executed as
soon as NewSub sub finishes, so you will exit the loop (and the whole sub).

HTH,
--
George Nicholson

Remove 'Junk' from return address.


"Jeff" wrote in message
...
Hi,

This is a partial copy of my VBA macro. My question is: Is possible in VBA
to execute a sub in an " If ... then statement?"

If TopCell Is Nothing Then
MsgBox myStr(iCtr) & " wasn't found"
Exit Sub --- here can I request the execution of sub instead of
Exit sub?
Else
.Range(TopCell, BotCell).Select
End If
Next iCtr
End With
Thanks,





All times are GMT +1. The time now is 11:08 PM.

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