vba无限excel vba 循环语句检测

拒绝访问 |
| 百度云加速
请打开cookies.
此网站 () 的管理员禁止了您的访问。原因是您的访问包含了非浏览器特征(3c07daf464fc4382-ua98).
重新安装浏览器,或使用别的浏览器可能有一种情况,需要执行代码块多次。在一般情况下,语句顺序执行:在一个函数的第一条语句,首先执行,然后是第二个...等等。
编程语言提供了多种控制结构,使更复杂的执行路径。
循环语句可以执行语句的语句多次或多组,下面是VBA循环的一般语句。
VBA提供循环以下类型的处理循环的要求。点击以下链接查看其详细信息。
执行语句多次序列,简写形式用于管理循环变量的代码。
这执行,如果有组的至少一种元素并且重申为在一组中的每个元素。
这在执行循环体之前测试条件。
do..while语句只要条件为真时执行。(即)循环重复,直到条件为False。
do..until语句执行直到条件为False。(即)循环应重复,只要条件为真。
循环控制语句:
循环控制语句改变其正常的顺序执行。当执行离开了循环范围,在循环中的所有剩余语句不执行。
VBA支持下列控制语句。点击以下链接查看其详细信息。
终止 for&循环语句并将执行的语句,将立即循环体的下面语句
终止do while语句并将执行循环紧随其后的语句
加QQ群啦!
JAVA技术群(2000人群):
MySQL/SQL群(2000人群):
Python技术群(2000人群):
大数据开发群(2000人群): (Java,Python,R,Scala,Hadoop,Spark,zookeeper,kafka等技术)
Web开发群(新群):
(PHP,HTML/HTML5,JS/JQuery,CSS等技术)
Linux技术群(新群): (Redhat/Centos,Ubuntu,Shell,运维,监控等技术)
人工智能&深度学习(新群):
(人工智能,深度学习,算法等技术)
易百教程移动端:请扫描本页面底部(右侧)二维码关注微信公众号,或直接手机访问:
上一篇:下一篇:查看: 724|回复: 3
一个循环+判断的写法
阅读权限10
在线时间 小时
For i = n to m
& &Select Case Cells(i, certain_column)
& && &&&Case Is = worksheets(&another_sheet&).Range(&A2&).Text
& && && && &&&Process_1
& &Select Case Cells(i, certain_column)
& && &&&Case Is = worksheets(&another_sheet&).Range(&A3&).Text
& && && && &&&Process_1
& &Select Case Cells(i, certain_column)
& && &&&Case Is = worksheets(&another_sheet&).Range(&A4&).Text
& && && && &&&Process_1
& &Select Case Cells(i, certain_column)
& && &&&Case Is = worksheets(&another_sheet&).Range(&A5&).Text
& && && && &&&Process_1
& &...
& &...
& &End Select
Next
复制代码
Cells(i, certain_column)是当前激活的工作表中的一列 是文件名
worksheets(&another_sheet&).Range(&A2&).Text 是另外一个工作表中的一列 是文件名的集合
这段code的作用我希望是 判断当前工作表文件名这一列的每个文件名 是否符合文件名集合中的一个
如果有符合的 则执行 Process1
如果没有符合的 就什么都不做
但是这里有一个问题 循环的开始是For i = n to m 但是整个code我发现只执行了 n 之后并没有如预期一样的继续循环直到m
请问这是为什么??
另外我写的很繁琐 假设文件名合集有一万个总不至于把Case Is = 写一万次吧?请问怎么简化?
阅读权限20
在线时间 小时
本帖最后由 xcc324919 于
13:58 编辑
你用两个循环就好了啊。一万个文件你就转到内循环里面,有就执行。没有就继续next 就好了。只是两个循环会比较慢点。For i = n to m
for a= 2 to worksheets(&another_sheet&).[a65536].end(3).row
if Cells(i, certain_column) = worksheets(&another_sheet&).cells(a,1).text then
& & Process_1
你可以将一万个文件名集合装进 字典 一个循环判断是否在字典里存在,存在就执行P 。不存在就下一个NEXT 就好了吧
dim arr = sheet2.[a:a]
set d= createobject(&scripting.dictionary&)
fora = 2 to ubound(arr)
d(arr(a,1))=1
for i = n to m
if d(Cells(i, certain_column)) &0 then
& & Process_1
这两种应该都可以吧
阅读权限100
在线时间 小时
& & & & & & & &
条件查询匹配,可以使用字典。
建议你上传附件来说明问题。
阅读权限10
在线时间 小时
你用两个循环就好了啊。一万个文件你就转到内循环里面,有就执行。没有就继续next 就好了。只是两个循环会 ...
谢谢啊 但是这个问题我不担心 我不懂得是第一个问题 而且我发现了
如果一旦程序发现一个符合条件的并且执行process1以后 整个循环就停止了
假设文件1的名字符合合集的一个 那么对文件1执行完process1之后 循环就不会进入2
假设文件1不符合 文件2符合 那么会进行到2 执行完process1以后就不会进行到3 end select后我有加next啊为什么会循环停止呢
最新热点 /1
ExcelHome每周都有线上直播公开课,
国内一流讲师真身分享,高手贴身答疑,
赶不上直播还能看录像,
关键居然是免费的!
厚木哥们都已经这么努力了,
你还好意思说学不好Office。
玩命加载中,请稍候
玩命加载中,请稍候
Powered by
本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任! & & 本站特聘法律顾问:徐怀玉律师 李志群律师2011年5月 VB大版内专家分月排行榜第一2011年4月 VB大版内专家分月排行榜第一2011年3月 VB大版内专家分月排行榜第一2011年2月 VB大版内专家分月排行榜第一2011年1月 VB大版内专家分月排行榜第一2010年12月 VB大版内专家分月排行榜第一2010年11月 VB大版内专家分月排行榜第一2002年2月 VB大版内专家分月排行榜第一2002年1月 VB大版内专家分月排行榜第一
2002年3月 VB大版内专家分月排行榜第三
2011年5月 VB大版内专家分月排行榜第一2011年4月 VB大版内专家分月排行榜第一2011年3月 VB大版内专家分月排行榜第一2011年2月 VB大版内专家分月排行榜第一2011年1月 VB大版内专家分月排行榜第一2010年12月 VB大版内专家分月排行榜第一2010年11月 VB大版内专家分月排行榜第一2002年2月 VB大版内专家分月排行榜第一2002年1月 VB大版内专家分月排行榜第一
2002年3月 VB大版内专家分月排行榜第三
2011年5月 VB大版内专家分月排行榜第一2011年4月 VB大版内专家分月排行榜第一2011年3月 VB大版内专家分月排行榜第一2011年2月 VB大版内专家分月排行榜第一2011年1月 VB大版内专家分月排行榜第一2010年12月 VB大版内专家分月排行榜第一2010年11月 VB大版内专家分月排行榜第一2002年2月 VB大版内专家分月排行榜第一2002年1月 VB大版内专家分月排行榜第一
2002年3月 VB大版内专家分月排行榜第三
2011年5月 VB大版内专家分月排行榜第一2011年4月 VB大版内专家分月排行榜第一2011年3月 VB大版内专家分月排行榜第一2011年2月 VB大版内专家分月排行榜第一2011年1月 VB大版内专家分月排行榜第一2010年12月 VB大版内专家分月排行榜第一2010年11月 VB大版内专家分月排行榜第一2002年2月 VB大版内专家分月排行榜第一2002年1月 VB大版内专家分月排行榜第一
2002年3月 VB大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。判断一个分数是否是无限循环小数,求算法-CSDN论坛
判断一个分数是否是无限循环小数,求算法
判断一个分数是否是无限循环小数,求算法
先简化分数,然后分母只能被2的幂或5的幂或2与5结合的整除完?
无限循环小数不知道数学上是怎么证明的,仅仅只是作除法观察商似有无限循环的形态的话,貌似不足以证明
但如果已知是无限循环小数求其循环节的话用长除法
http://zh.wikipedia.org/wiki/%E5%BE%AA%E7%8E%AF%E5%B0%8F%E6%95%B0
引用&1&楼&wangxf_8341&的回复:先简化分数,然后分母只能被2的幂或5的幂或2与5结合的整除完?
恩,是这样得,我也是刚看了下小学奥数-&-
首先确定分子、分母互质的分数一定是无限循环小数。
然后利用欧几里德辗转相除法确定分子、分母是否互质。
最后如果互质则表明该分数是无限循环小数。
public&static&int&gcd(int&a,&int&b)&{
if&(a&%&b&==&0)
return&gcd(b,&a&%&b);
补充:如果不互质先求出最大公约数,分子分母除去最大公约数后,再利用辗转相除法确定
引用&4&楼&gu&的回复:首先确定分子、分母互质的分数一定是无限循环小数。
然后利用欧几里德辗转相除法确定分子、分母是否互质。
最后如果互质则表明该分数是无限循环小数。
Java&code?123456public&static&int&gcd(int&a,&int&b)&{&&&&&&&&if&(a&%&b&==&0)&&&&&&&&&&&&return&b;&&&&&&&&else&&&……
正解&简单&易懂
3&和 10 也是互质的,他们可以除尽啊
回复

我要回帖

更多关于 vba循环语句 的文章

 

随机推荐