VBA 工作薄中所有工作表怎么用代码表示
5个回答
展开全部
给你个函数用:
---------------------
Function iExistsSheet(shNm) As Boolean
'检测当前工作薄中是否存在名字为 shNm 的工作表
On Error Resume Next
Dim sh As Worksheet
Set sh = Worksheets(shNm)
iExistsSheet = (Err.Number = 0)
Err.Clear
End Function
-----------------
下面是测试这个函数的程序:
Sub iTest()
Dim s As String, t As Boolean
s = "sheet1"
t = iExistsSheet(s)
MsgBox "工作表<" & s & ">" & IIf(t, "", "不") & "存在。"
'如果不存在,退出程序:
If Not t Then Exit Sub
'如果存在,并要使用这个工作表中的单元格 A1 的数据:
Dim ss
With Worksheets(s)
ss = .Range("A1")
MsgBox "工作表<" & s & ">中 单元格 A1 的值:" & ss
End With
End Sub
---------------------
Function iExistsSheet(shNm) As Boolean
'检测当前工作薄中是否存在名字为 shNm 的工作表
On Error Resume Next
Dim sh As Worksheet
Set sh = Worksheets(shNm)
iExistsSheet = (Err.Number = 0)
Err.Clear
End Function
-----------------
下面是测试这个函数的程序:
Sub iTest()
Dim s As String, t As Boolean
s = "sheet1"
t = iExistsSheet(s)
MsgBox "工作表<" & s & ">" & IIf(t, "", "不") & "存在。"
'如果不存在,退出程序:
If Not t Then Exit Sub
'如果存在,并要使用这个工作表中的单元格 A1 的数据:
Dim ss
With Worksheets(s)
ss = .Range("A1")
MsgBox "工作表<" & s & ">中 单元格 A1 的值:" & ss
End With
End Sub
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果是当前工作表名,用 activesheet.name,如果要当前工作簿名则是 activeworkbook.name
如果要当前工作簿的所有工作表名或者指定第几个表名,则需要在循环中完成,引用方式为:
sheets(i).name
如果要当前工作簿的所有工作表名或者指定第几个表名,则需要在循环中完成,引用方式为:
sheets(i).name
追问
是不是把i定义为变量,,我设i为变量 i=i 1
if sheets(i).name = "abc" then
还是不能达到效果,我要找出工作薄是否有"ABC"的工作表
追答
这个肯定要用循环才能实现,都有i了,告诉你用循环了.
for i=1 to sheets.count
if sheets(i).name= "ABC" then
.....
endif
next
如果找到了就要退出循环的话,在endif之前还要加一个 exit for
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
工作薄中的所有工作表是一个集合 用sheets表示 如果你要遍历所有的工作表,判断某一个工作表的名称是不是你指定的.
代码的例子如下:
dim sht as range
for each sht in sheets
if sht.name="ab" then
.....
end if
next
或者
for i=1 to sheets.count
if sheets(i).name="ab" then
.....
end if
next i
代码的例子如下:
dim sht as range
for each sht in sheets
if sht.name="ab" then
.....
end if
next
或者
for i=1 to sheets.count
if sheets(i).name="ab" then
.....
end if
next i
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
application.Worksheets(1).name="ABC"
application.Worksheets(2).name="ABCD"
application.Worksheets(2).name="ABCD"
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |