【Excel VBA 中两种循环退出的方法】

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

Excel 工具在数据处理方面的功能十分强大,得益于微软逻辑系统功能的一体化和其本身全面的函数,除此之外还附加VBA的功能,服务于各行各业的自动化能力。

  • 工作中偶尔会使用到VBA的某些功能,本着学习中分享,分享中总结。以便技术点滴积累,也许某刻在某个小点上也能辅助到他人解决一点问题。

一、Excel VBA的优势

  1. Excel 身为微软的核心软件之一,经过多年打磨,和微软的操作系统绑定之深,功能之全面,使用案例之多,灵活度之高是无与伦比的。

  2. VBA 寄宿于Excel 本身作为微软之利剑,也能很好全面集成Excel 中已有的各种功能函数 ,各种调用界面,以及其自身面向对象的灵活功能,是其他语言无法比拟的。常常可以这么认为,Excel VBA 已经可以处理业务中遇到的各种问题。小到细枝末节,大到模块化界面都有其存在的无可比拟意义,及时强大如 Python 也在很多方面不如本地化的 VBA 灵活方便。

二、总结VBA 使用中的一些知识小点

1. 跳出 本次循环,继续下一次循环 类似其他语言中的 continue 语句

代码如下: GoTo 语句可以实现相同功能

Sub data_tools()
Dim sht As Worksheet
Set sht = Sheets("Sheet3")

Rem 举例 九九乘法表
For i = 1 To 9
    For j = 1 To 9
           If j <= i Then
	           If j = 5 Then
	           		Rem 测试下,GoTo 跳出本次循环
	                GoTo line:
	            Else
	                sht.Cells(i, j) = i & " * " & j & "= " & i * j
	            End If
       End If
Rem 跳到此处,进行下一次循环      
line:
    Next j
Next i
End Sub

以上代码执行结果如下:
在这里插入图片描述

2. 跳出整个循环 类似其他语言中的 break 语句

代码如下: Exit For 语句可以实现相同功能 (如果是 Do 语句,可使用 Exit Do 语句退出循环)

Sub data_tools()

Dim sht As Worksheet
Set sht = Sheets("Sheet3")

Rem 举例 九九乘法表
For i = 1 To 9
    For j = 1 To 9
       If j <= i Then
            If j = 5 Then
                Rem 测试下,Exit For 跳出内层整个For 循环,第五列后的不再打印
                Exit For:
            Else
                sht.Cells(i, j) = i & " * " & j & "= " & i * j
            End If
       End If
    Next j
Next i
End Sub

以上代码执行结果如下:在这里插入图片描述

总结

两种在循环中退出的模式,VBA 都有自己的实现,合理问题的类型和合理使用可以达到其他高级语言相同的能力。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值