excel - VBA基础入门 - 图文(6)

2019-08-29 21:47

dim 圈数 as byte

for 圈数=1 to 50 step 1 If 学生.要求=退赛 exit for End If Next 圈数 End Sub

当然,这只是一个实例,帮助你对For—next语句的理解,下面我们来用一个实例来讲解For-next语句!

问题:求1到1000的自然数的和。程序编为: 复制内容到剪贴板 代码:

Sub mysum()

Dim Lsum As Long, i As Long For i = 1 To 1000 Lsum = Lsum + i Next

MsgBox \到1000的自然数和为:\End Sub

for_next-1到1000自然数的和.rar (6.14 KB) 以下代码由老朽提供 引用:

ggsmart说明:以下代码为38度OFFICE技术论坛的老朽版主提供,主要是帮助大家对VBA语句的认识.

复制内容到剪贴板 代码:

撰写:38度:老朽

'日期:2009-7-1 上午 11:40:59 Sub 求1到10000之间偶数和() Dim I&, J&

For I = 0 To 10000 Step 2 J = J + I Next

MsgBox \到10000之间偶数和为\End Sub

复制内容到剪贴板 代码:

'撰写:38度:老朽

'日期:2009-7-1 上午 11:40:59 Sub 求1到10000之间偶数和2() Dim I&, J&

For I = 10000 To 1 Step -2 J = J + I Next

MsgBox \到10000之间偶数和为\End Sub

复制内容到剪贴板 代码:

'撰写:38度:老朽

'日期:2009-7-1 上午 11:40:59 Sub 求1到10000之间奇数和() Dim I&, J&

For I = 1 To 10000 Step 2 J = J + I Next

MsgBox \到10000之间奇数和为\End Sub

复制内容到剪贴板 代码:

'撰写:38度:老朽

'日期:2009-7-1 上午 11:40:59 Sub 求1到10000之间奇数和2() Dim I&, J&

For I = 9999To 1 Step -2'此句于2009年8月18日纠正 J = J + I Next

MsgBox \到10000之间奇数和为\End Sub 引用:

感谢109楼artemis_xu朋友对以上代码的纠正! 复制内容到剪贴板 代码:

'撰写:38度:老朽

'日期:2009-7-1 上午 11:40:59

Sub 求1到10000之间能被5整除的数之和() Dim I&, J&

For I = 0 To 10000 Step 5 J = J + I Next

MsgBox \到10000之间能被5整除的数之和为\End Sub

复制内容到剪贴板 代码:

'撰写:38度:老朽

'日期:2009-7-1 上午 11:40:59

Sub 求1到10000之间能被5整除的数之和2() Dim I&, J&

For I = 10000 To 1 Step -5 J = J + I Next

MsgBox \到10000之间能被5整除的数之和为\End Sub

程序流程控制——For—Each 循环语句 ===============================

有了前面对循环一词的理解,这里我们不用再多说,如果你知道了For—next语句的工作原理,这里再来学习For—each循环以及下面我们接着要讲的句式,那就相当简单了,同样的工作原理。

学会了吃苹果,那么离会吃梨的道路还会远吗?

呵呵,只是开个小小的玩笑,下面我们继续,首先来看看For—Each语句的句式:

For Eacn 元素变量 In 对象集合或数组名称 语句块1 [Exit For] 语句块2 next 元素变量

和上面For—next句式是一样的工作原理。

这里的?元素变量?是用来遍历集合或数中中元素的变量,它从集合或数组的第一个元素开始,直到最后一个元素,然后退出循环。

这里我们举个例子,把当前工作薄中工作表的名称写在A列,程序为: 复制内容到剪贴板 代码:

Sub shtname()

Dim i As Integer, sht As Worksheet i = 1

For Each sht In Worksheets Cells(i, 1) = sht.Name

i = i + 1 '让写入名称的单元格下移一行 Next End Sub

for-each返回工作表名称.rar (7.52 KB) for-each返回工作表名称.rar (7.52 KB)

程序流程控制——Do While语句 ===========================

Do While也是循环语句,它分为两种情况,一种是把循环条件放在开头,一种是把循环条件放在结尾。

1、开头判断循环条件 语句格式:

Do Wihle 循环条件 语句块1 [Exit Do] 语句块2 Loop

首先判断循环条件,条件为真则执行Do到Loop之间的语句。 2、结尾判断循环条件 语句格式: Do

语句块1 [Exit Do] 语句块2

Loop Wihle 循环条件

先执行一次Do到Loop之间的语句,再判断循环条件,满足条件则进行循环。

两种格式的区别:因为第二种格式是把循环体放在尾部,得先执行一遍语句再进行循环条件判断,所以,同样的条件,第二种格式的循环会比第一种多执行一次循环部份的语句。 我们用Do While语句来解决求1——1000的自然数的和的问题: 复制内容到剪贴板 代码:

Sub mysum()

Dim Lsum As Long, i As Long i = 1

Do While i <= 1000 Lsum = Lsum + i i = i + 1 Loop

MsgBox \到1000的自然数和为:\End Sub

do while1到1000自然数的和.rar (6.19 KB) do while1到1000自然数的和.rar (6.19 KB)

程序流程控制——Do Until 语句

这个和Do While语句类似,它也有两种形式,学了Do While 语句,再看这个,就可以无师自通了。下面就简单介绍下: 1、开头判断循环条件 语句格式:

Do Until 循环条件 语句块1 [Exit Do] 语句块2 Loop

2、结尾判断循环条件 语句格式: Do

语句块1 [Exit Do] 语句块2

Loop Until 循环条件

执行Do 和Loop之间的指令,直到循环条件为真时退出循环。

直到循环条件为真时退出循环,这是Do Until 与 Do While的区别。而它两种语句格式的区别,也是第二种比第一种多执行一次循环部分的语句。 还是求1——1000自然数的问题,这次我们换用Do Untile语句: 代码:

Sub mysum()

Dim Lsum As Long, i As Long i = 1 Do

Lsum = Lsum + i i = i + 1

Loop Until i > 1000

MsgBox \到1000的自然数和为:\End Sub

do until1到1000自然数的和.rar (6.19 KB) do until1到1000自然数的和.rar (6.19 KB)

是的,你看了上面的代码,觉得和楼上我们写的代码变化并不大。这里我用的是第二种格式(结尾判断)的语句,你可以试着用第一种句式写一写,或者改一改其他的问题.这里,我只是举个例子,路还得让你自己走! 程序流程控制——Go to 语句 ===========================

Go to 在英语里是什么?相信大家的英语都比我好得太多,不用多说。其实Go to 语句的作用用定两个英语单词就说明问题了,?Go to 地点?就是去到哪儿的意思。

Go to 语句是将程序转到指定的标签的语句位臵,然后继续往下执行。Go to 语句通常用来作错误处理。

同样的,还是用Go to 语句来做1——1000自然数的和: 代码:

Sub mysum()

Dim Lsum As Long, i As Long i = 1

x: '为go to 语句设臵的标签,必须以英文状态下的冒号结尾 Lsum = Lsum + i i = i + 1

If i <= 1000 Then GoTo x '如果i<=1000,则程序跳到标签X处 MsgBox \到1000的自然数和为:\End Sub

go to 1到1000自然数的和.rar (6.34 KB) go to 1到1000自然数的和.rar (6.34 KB)

注意:为Go to 语句设臵的标签必须以英文状态的冒号结尾。

有人说,为了方便程序的阅读,规范程序,在程序里也避免少用Go to 语句,我很赞同,也希望你们能养成这个习惯。 用户窗体

-----------------------

用户窗体(UserForm对象)是VBA的另一类对象。它表现出来是一个窗口或对话框,如前面我们说的MsgBox与InputBox语句弹出来的都属于窗体。使用窗体可以提供一个形象的用户界面。同我们可以在工作表(WorkSheet)上在添加不同的控件一样,在这个界面上,我们可以添加命令按钮、标签、图像、列表框等控件,用户可以通过修改控件的属性、编写不同的事件过程在程序运行过程中与程序进行交互。 1、添加窗体

如果你还没有忘记怎么插入模块?那请用同样的方法插入一个用户窗体。


excel - VBA基础入门 - 图文(6).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016-2021年中国金花米黄抛光砖行业市场调研及战略投资预测报告

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: