Excel精英培训网

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

[已解决]VBA视频第10集的疑问

[复制链接]
发表于 2012-5-6 16:34 | 显示全部楼层 |阅读模式
    Sub s1()
     Dim X As Integer
      For X = 1 To Sheets.Count
        If Sheets(X).Name = "A" Then
          MsgBox "A工作表存在"
          Exit Sub
        End If
      Next
      MsgBox "A工作表不存在"
    End Sub

在这个for...next语句中,为什么next后面不用跟变量X呢?
最佳答案
2012-5-6 16:41
next后面的变量X可以缺省,省略不写
发表于 2012-5-6 16:41 | 显示全部楼层    本楼为最佳答案   
next后面的变量X可以缺省,省略不写
回复

使用道具 举报

发表于 2012-5-6 17:19 | 显示全部楼层
2楼正解,不过还是建议养成好习惯,把x加上去。
个人感觉加上去后代码的可读性更强了!{:3212:}
回复

使用道具 举报

发表于 2012-5-6 17:56 | 显示全部楼层
看过很多for...next的代码,next后面都没有写。
回复

使用道具 举报

发表于 2012-5-6 18:02 | 显示全部楼层
这个可以省略,不过还是加上好
回复

使用道具 举报

发表于 2012-5-6 18:21 | 显示全部楼层
如果是初学者还是加上吧。
记住可以省略不写就OK了。
回复

使用道具 举报

发表于 2012-5-8 16:07 | 显示全部楼层
以下是我对楼主代码的理解,请学友们多多指教
____________________________________________________________________________________________
'本过程测试当前工作薄中是否有名称为A的工作表
Sub SheetExistOrNot()
Dim iSheet As Integer                                           '声明变量iSheet为工作表号
'进入工作表存在与否的判定循环
       For iSheet = 1 To Sheets.Count                    '从第1张工作表开始进行遍历
                If Sheets(iSheet).Name = "A" Then       '判断第iSheet张工作表的名称是否为A
               
                    MsgBox "A工作表存在"                        '如该工作表名称为A,则运行MsgBox方法提示"A工作表存在"
                    Exit Sub                                               '并退出本过程(注意:不会运行Exit Sub后面的程序代码)
                    
                End If                                                       'If语句结束
       Next iSheet
      
       MsgBox ("不存在名称为A的工作表")                         '循环结束后,如果遍历过的所有工作表名称都不是A,则运行此语句
End Sub

回复

使用道具 举报

发表于 2012-5-8 16:18 | 显示全部楼层
回复

使用道具 举报

发表于 2012-8-4 10:48 | 显示全部楼层
{:20:}
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-14 15:30 , Processed in 0.285274 second(s), 8 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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