VBA中过程与函数调用问题

大家好,自学VBA编程有些时间了,但是VBA中过程(函数)的调用用Exitsub或Exitfunction无法退出调用原调用的整个过程!!如:suba()\c=input... 大家好,自学VBA编程有些时间了,但是VBA中过程(函数)的调用用Exit sub或Exit function无法退出调用原调用的整个过程!!如:sub a() \ c=inputbox("请输入数c") \ call b \ d=c+2 \end sub\ sub b() \ if c>0 then \ exit sub \ else \ c=2*c \end if \end sub ,以上中的\表示回车换行符,我想实现的功能是在调用Call b过程中,如果c>0,我不仅要退出b过程还要退出a过程!!这个功能也就是想实现VBA中某些单元格的输入判定,比如单元格只能是数字或者不能是空等,然后在所要计算的程序中用调用过程!!我做过调用的,但是效果不理想,只能退出调用过程,调用后面的程序会继续运行!!请高手不吝赐教,我没分了,以后我会补上的,谢谢!!
一楼的朋友谢谢,你的功能虽然能满足,但不是那样的,我希望的是在b过程中就跳出所有过程,就像VB中的公共函数,避免调用后的语句运行,可以用End语句结束,,VBA中好像不能用End语句吧!!朋友,还是谢谢你的热心帮助!
展开
 我来答 举报
mdoom
推荐于2016-07-14 · TA获得超过2925个赞
知道大有可为答主
回答量:1370
采纳率:0%
帮助的人:741万
展开全部
sub a()
c=inputbox("请输入数c")
call b
if c<>2*c then exit sub //加上这句就可以了,因为你b过程修改的是c值,如果c没变就推出
d=c+2
end sub

sub b()
if c>0 then exit sub
else c=2*c
end if
end sub ,
帐号已注销
2010-12-26 · TA获得超过8615个赞
知道大有可为答主
回答量:3242
采纳率:66%
帮助的人:2943万
展开全部
end
强迫中止程序
---------------------试试下面的代码---------------------
Sub a()
c = InputBox("请输入数c")
Call b(c)
MsgBox c
End Sub

Sub b(c)
If c > 0 Then End
c = 2 * c
End Sub
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
大圣美猴王2ROM4
2010-12-24 · TA获得超过1171个赞
知道大有可为答主
回答量:2386
采纳率:100%
帮助的人:2112万
展开全部
VBA中能用End语句

End 语句示例
本示例使用 End 语句,在用户输入错误密码时结束代码执行。

Sub Form_Load
Dim Password, Pword
PassWord = "Swordfish"
Pword = InputBox("Type in your password")
If Pword <> PassWord Then
MsgBox "Sorry, incorrect password"
End
End If
End Sub
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
2108031987
2010-12-18
知道答主
回答量:12
采纳率:0%
帮助的人:0
展开全部
可以用END
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式