ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 3234|回复: 11

请教VBA的循环中如何实现类似C语言的Continue功能?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2005-4-16 13:26 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册

小弟初学VB,看了VB的参考书,但是找不到类似Continue的功能,请问那位能指点一下。

如下的循环体

while

if a=0 then

' 这里我想能够直接下一个循环,而不是退出循环,从而可以避免执行循环体内后面的代码

end if

......

wend

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-16 13:36 | 显示全部楼层
使用Goto语句可以实现我上面说的功能,但是说实在话,我不太喜欢使用Goto语句的。

TA的精华主题

TA的得分主题

发表于 2005-4-16 16:52 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2005-4-16 18:50 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2005-4-16 19:22 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
何不用if a<>0 then ?

TA的精华主题

TA的得分主题

发表于 2005-4-16 20:41 | 显示全部楼层

具体要看你的程序了,实现办法很多.用条件语句就可以的.

如a=0时就不执行循环体而continue

while <条件>

if a<>0 then

......'循环体代码

end if

wend

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-23 14:08 | 显示全部楼层

谢谢ldhyob和大家的耐心答复,但是很多情况下是不能用上面的方法解决的,比如我还需要检查b变量的数值,或者还需要检查很多其他的参数呢,诚然,即使不使用continue也可以实现最终的功能,只是那样的话代码编出来,格局就很不美观了。

小弟也只是想探讨一下看看VB里面用什么方法来实现这个C语言的continue的功能。

TA的精华主题

TA的得分主题

 楼主| 发表于 2005-4-23 14:23 | 显示全部楼层
比如如下的代码: lRecord = 2 For lI = 2 To MaxRows(SheetPayout) If (IsEmpty(Cells(lRecord, 1)) Or IsEmpty(Cells(lRecord, 2)) Or IsEmpty(Cells(lRecord, 3))) Then MsgBox "支出表:日期、支出类别和金额必须填写完整!行号=" & lRecord Rows(lRecord).Delete Shift:=xlUp continue End If If Cells(lRecord, 3).Value = 0 Then MsgBox "支出表:金额不能为0!行号=" & lRecord Rows(lRecord).Delete Shift:=xlUp continue End If lRecord = lRecord + 1 Next

大家看看,如果不使用continue,应该怎样改?

TA的精华主题

TA的得分主题

发表于 2005-4-23 14:25 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2024-7-17 09:22 | 显示全部楼层
清风_ll 发表于 2005-4-16 19:22
何不用if a&lt;&gt;0 then ?

反思维,好方法,点个赞!
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-11-18 09:31 , Processed in 0.040810 second(s), 9 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表