Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2414|回复: 2

[习题] [灌水]VBA循环语句(今天学的东西~)

[复制链接]
发表于 2008-4-3 21:04 | 显示全部楼层 |阅读模式
<div class="content" id="BodyLabel" style="ADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px;"><h2 style="MARGIN: 6pt 0cm;"><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体;"><font color="#0000ff">VBA循环语句<span lang="EN-US"><p></p></span></font></span></h2><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">1</span><span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">)<b><span lang="EN-US" style="COLOR: red;">For Next</span><span style="COLOR: red;">语句</span></b> 以指定次数来重复执行一组语句<span lang="EN-US"><p></p></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="COLOR: red; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">For </span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">counter<span style="COLOR: red;"> =</span> start <span style="COLOR: red;">To</span> end [<span style="COLOR: red;">Step</span> step] <span style="COLOR: lime;"><span style="mso-spacerun: yes;">&nbsp;</span><span style="mso-tab-count: 3;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>' step </span></span><span style="COLOR: lime; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">缺省值为<span lang="EN-US">1<p></p></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">[statements]<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">[Exit For]<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">[statements]<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Next [counter]<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">如<span lang="EN-US">1</span>:<span lang="EN-US"><p></p></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="COLOR: red; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">For</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"> Words = 10 <span style="COLOR: red;">To</span> 1 <span style="COLOR: red;">Step</span> -1<span style="mso-spacerun: yes;">&nbsp;&nbsp; </span><span style="mso-tab-count: 3;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: lime;">' </span></span><span style="COLOR: lime; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">建立<span lang="EN-US"> 10 </span>次循环</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><span style="mso-spacerun: yes;">&nbsp;&nbsp;&nbsp; </span>For Chars = 0 To 9<span style="mso-spacerun: yes;">&nbsp;&nbsp;&nbsp; </span><span style="mso-tab-count: 4;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: lime;">' </span></span><span style="COLOR: lime; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">建立<span lang="EN-US"> 10 </span>次循环</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><span style="mso-spacerun: yes;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span>MyString = MyString &amp; Chars<span style="mso-spacerun: yes;">&nbsp;&nbsp; </span><span style="COLOR: lime;"><span style="mso-spacerun: yes;">&nbsp;</span><span style="mso-tab-count: 1;"> </span>' </span></span><span style="COLOR: lime; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">将数字添加到字符串中</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><span style="mso-spacerun: yes;">&nbsp;&nbsp;&nbsp; </span>Next Chars<span style="mso-spacerun: yes;">&nbsp;&nbsp;&nbsp; </span><span style="mso-tab-count: 6;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: lime;">' Increment counter</span><p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><span style="mso-spacerun: yes;">&nbsp;&nbsp;&nbsp; </span>MyString = MyString &amp; " "<span style="mso-spacerun: yes;">&nbsp;&nbsp; </span><span style="mso-tab-count: 2;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: lime;">' </span></span><span style="COLOR: lime; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">添加一个空格</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="COLOR: red; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Next</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"> Words<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">2</span><span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">)<b><span lang="EN-US" style="COLOR: red;">For Each…Next</span><span style="COLOR: red;">语句<span lang="EN-US"><span style="mso-spacerun: yes;">&nbsp; </span></span></span></b>主要功能是对一个数组或集合对象进行,让所有元素重复执行一次语句<span lang="EN-US"><p></p></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="COLOR: red; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">For Each</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"> element <span style="COLOR: red;">In</span> group<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Statements<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="COLOR: red; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">[Exit for]<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Statements<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="COLOR: red; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Next</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"> [element]<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">如<span lang="EN-US">1</span>:<span lang="EN-US"><p></p></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="COLOR: red; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">For Each</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"> rang<chmetcnv wst="on" unitname="in" sourcevalue="2" hasspace="True" negative="False" numbertype="1" tcsc="0">2 <span style="COLOR: red;">In</span></chmetcnv> range1<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; mso-para-margin-left: 2.0gd;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">With range2.interior<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 32.25pt; mso-para-margin-left: 2.0gd;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">.colorindex=6<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; TEXT-INDENT: 32.25pt; mso-para-margin-left: 2.0gd;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">.pattern=xlSolid<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 21pt; mso-para-margin-left: 2.0gd;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">End with<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="COLOR: red; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Next<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt;"><span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">这上面一例中用到了 <span lang="EN-US" style="COLOR: red;">With…End With</span><span lang="EN-US"> </span>语句,目的是省去对象多次调用,加快速度;语法为:<span lang="EN-US"><p></p></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">With object<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">[statements]<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">End With<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">3</span><span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">)<b><span lang="EN-US" style="COLOR: red;">Do…loop</span>语句 在条件为<span lang="EN-US">true</span>时,重复执行区块命令<span lang="EN-US" style="COLOR: red;"><p></p></span></b></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Do {while |until} condition<span style="COLOR: lime;">' while </span></span><span style="COLOR: lime; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">为当型循环,<span lang="EN-US">until</span>为直到型循环,顾名思义,不多说啦</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Statements<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Exit do<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Statements<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><place wst="on"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Loop</span></place><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">或者使用下面语法<span lang="EN-US"><p></p></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Do<span style="mso-tab-count: 7;">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span><span style="COLOR: lime;">' </span></span><span style="COLOR: lime; FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">先<span lang="EN-US">do </span>再判断,即不论如何先干一次再说</span><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;"><p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Statements<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Exit do<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Statements<p></p></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt;"><span lang="EN-US" style="FONT-FAMILY: 宋体; mso-bidi-font-size: 10.5pt;">Loop {while |until} condition<p></p></span></p></div>
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2010-3-25 20:07 | 显示全部楼层
回复

使用道具 举报

发表于 2010-3-31 19:04 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-19 02:48 , Processed in 0.388432 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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