ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   How to Kill a vba macro from a Function// (https://www.excelbanter.com/excel-programming/332686-how-kill-vba-macro-function.html)

Coco

How to Kill a vba macro from a Function//
 
This macro check all cells in columns A; in my VBA a Module call a Function
and it runs after all cell values in column A has been checked. During the
process It prompts with a MsgBox if this cell has errors ONLY (this MsgBox is
inside this Function).

if this CELL has errors. I want to add in this MsgBox an option to:

Yes:GOTO cell with errors and then CLOSE vba macro OR
No: continue with the loop checking all values in column A.

My question is:
There is a command that I can put inside a function to kill or force the
Macro to end?

I tried

"End Function"

but it kills only the function and not the entire forms (3 forms)


Thanks

Coco

bhofsetz[_88_]

How to Kill a vba macro from a Function//
 

Coco,
Just use

End

that will End the function and the macro which called it.

HTH


--
bhofsetz
------------------------------------------------------------------------
bhofsetz's Profile: http://www.excelforum.com/member.php...o&userid=18807
View this thread: http://www.excelforum.com/showthread...hreadid=381767


Dave Peterson[_5_]

How to Kill a vba macro from a Function//
 
That also clears any persistent variables (public/static).

You may want to use this very sparingly (or not at all).

bhofsetz wrote:

Coco,
Just use

End

that will End the function and the macro which called it.

HTH

--
bhofsetz
------------------------------------------------------------------------
bhofsetz's Profile: http://www.excelforum.com/member.php...o&userid=18807
View this thread: http://www.excelforum.com/showthread...hreadid=381767


--

Dave Peterson

Dave Peterson[_5_]

How to Kill a vba macro from a Function//
 
I'd pass back the results of the function. Kind of like:

sub testme

dim OkToContinue as boolean
okTocontinue = dosomething(activesheet.range("a1:A10"))

if oktocontinue = false then
exit sub
end if

oktocontinue = dosomethingelse(...)

'....

end sub

function dosomething(rng as range) as boolean
dim res as long
'do something
res = msgbox(prompt:="continue?",buttons:=vbyesno)
if res = vbyes then
dosomething = true
else
dosomething = false
end if
end function



coco wrote:

This macro check all cells in columns A; in my VBA a Module call a Function
and it runs after all cell values in column A has been checked. During the
process It prompts with a MsgBox if this cell has errors ONLY (this MsgBox is
inside this Function).

if this CELL has errors. I want to add in this MsgBox an option to:

Yes:GOTO cell with errors and then CLOSE vba macro OR
No: continue with the loop checking all values in column A.

My question is:
There is a command that I can put inside a function to kill or force the
Macro to end?

I tried

"End Function"

but it kills only the function and not the entire forms (3 forms)

Thanks

Coco


--

Dave Peterson

Coco

How to Kill a vba macro from a Function//
 
Excellent!!. It works that way!

Thank you for the approach

Coco


"coco" wrote:

This macro check all cells in columns A; in my VBA a Module call a Function
and it runs after all cell values in column A has been checked. During the
process It prompts with a MsgBox if this cell has errors ONLY (this MsgBox is
inside this Function).

if this CELL has errors. I want to add in this MsgBox an option to:

Yes:GOTO cell with errors and then CLOSE vba macro OR
No: continue with the loop checking all values in column A.

My question is:
There is a command that I can put inside a function to kill or force the
Macro to end?

I tried

"End Function"

but it kills only the function and not the entire forms (3 forms)


Thanks

Coco



All times are GMT +1. The time now is 04:59 PM.

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