Excel精英培训网

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

[习题] [原创]【VBA入门点滴】“工作表”表示方法

[复制链接]
发表于 2007-12-15 10:19 | 显示全部楼层 |阅读模式
<p><font size="5"><font color="#1a1ae6">&nbsp;<font size="3">给新手谈谈“工作表”表示方法</font></font> </font></p><p><font size="5">&nbsp;&nbsp;&nbsp;&nbsp; 早上看到zgwei050发了个“工作表的位置问题学习体会”,顺便再发一个给大家,好让基础班的学员了解一下!(<font color="#778588">不对的地方欢迎大家批评指正!</font>)</font></p><p><font size="5">工作表的三种表示方法:</font></p><p><font size="5">1、直接引用名称:</font></p><p><font size="5">&nbsp;&nbsp;&nbsp; Sheets("工作表名称")&nbsp;,引号内直接用工作表标签处的工作表名称即可。</font></p><p><font size="5">&nbsp;&nbsp;&nbsp; 比如:工作表名称为“汇总”,则表示为:Sheets("汇总")。</font></p><p><font size="5">如图:</font></p><p>&nbsp;

[原创]给新手谈谈“工作表”表示方法

[原创]给新手谈谈“工作表”表示方法
</p><p><font size="5">代码:</font></p><p>Sub 测试_直接用名称() '只是不能用变量,所以无法做成循环的(雨中漫步)</p><p>&nbsp;&nbsp;&nbsp; On Error Resume Next<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets("a").Select<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets("a").Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets("b").Select<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets("b").Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets("c").Select<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets("c").Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets("d").Select<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets("d").Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets("e").Select<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets("e").Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets("f").Select<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets("f").Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets("g").Select<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets("g").Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets("h").Select<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets("h").Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets("汇总").Select<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets("汇总").Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"</p><p>End Sub<br/></p><br/>
[此贴子已经被作者于2007-12-17 10:28:04编辑过]
 楼主| 发表于 2007-12-15 10:20 | 显示全部楼层

<p><font size="5">2、Sheet加数字法:</font></p><p><font size="5">&nbsp;&nbsp;&nbsp; Sheet+工作表序号&nbsp;,Sheet紧接工作表在VBE编程界面里的从上到下的名称编号即可。</font></p><p><font size="5">&nbsp;&nbsp;&nbsp; 比如:工作表名称为Sheet1,则表示为:Sheet1。</font></p><p><font size="5">如图:</font></p><p>&nbsp;

<br/><a id="ImgSpan" href="http://www.excelpx.com/UploadFile/2007-12/2007121510202963722.jpg" target="_blank"></a></p><p><font size="5">代码:</font></p><p>Sub 测试_Sheet位置() '只是不能用变量,所以无法做成循环的(雨中漫步)</p><p>&nbsp;&nbsp;&nbsp; On Error Resume Next<br/>&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheet1.Select '按VBE编辑界面里的位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheet1.Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheet2.Select '按VBE编辑界面里的位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheet2.Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheet3.Select '按VBE编辑界面里的位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheet3.Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheet4.Select '按VBE编辑界面里的位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheet4.Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheet5.Select '按VBE编辑界面里的位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheet5.Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheet6.Select '按VBE编辑界面里的位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheet6.Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheet7.Select '按VBE编辑界面里的位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheet7.Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheet8.Select '按VBE编辑界面里的位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheet8.Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheet9.Select '按VBE编辑界面里的位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheet9.Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"</p><p>End Sub<br/></p><p></p><br/>
[此贴子已经被作者于2007-12-15 10:24:59编辑过]
回复

使用道具 举报

 楼主| 发表于 2007-12-15 10:20 | 显示全部楼层

<p><font size="5">3、Sheets(数字)法:</font></p><p><font size="5">&nbsp;&nbsp;&nbsp; Sheets(数字)&nbsp;,Sheets后面的括号里用工作表在标签处的从左到右的顺序号即可,此法可利用循环,推荐使用。</font></p><p><font size="5">&nbsp;&nbsp;&nbsp; 比如:工作表在左边第一个位置,则表示为:Sheets(1)。</font></p><p><font size="5">如图:</font></p><p>

<br/><a id="ImgSpan" href="http://www.excelpx.com/UploadFile/2007-12/2007121510213110279.jpg" target="_blank"></a><br/><a id="ImgSpan" href="http://www.excelpx.com/UploadFile/2007-12/2007121510202963722.jpg" target="_blank"></a></p><p><font size="5">代码:</font></p><p>Sub 测试_Sheets位置()<br/>&nbsp;&nbsp;&nbsp; Dim i As Integer<br/>&nbsp;&nbsp;&nbsp; For i = 1 To Sheets.Count<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Sheets(i).Select '按工作表标签的物理位置排序<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; MsgBox "你选中的是“" &amp; Sheets(i).Name &amp; "”工作表!", 0 + 64, "雨中漫步提示你:"<br/>&nbsp;&nbsp;&nbsp; Next i<br/>End Sub<br/></p><p><font color="#ee3d11" size="5">说明:</font></p><p><font color="#ee3d11" size="5">准确的地讲,上面写成的sheets只有在工作簿中只有工作表时才对,有其他图表的就不对,标准写法是写成worksheets。</font></p><p><font color="#ee3d11" size="5">因为:</font></p><p><font color="#ee3d11" size="5">worksheets 是工作表的集合 ,只包含worksheet。</font></p><p><font color="#ee3d11" size="5">sheets 是图和表的集合,包括工作表和图表。即:工作表worksheet、图表Chart、宏表Macro和对话框Dialog。</font></p><p><font color="#ee3d11" size="5">如下:</font></p><p>&nbsp;

<br/>&nbsp;</p>

<br/>
[此贴子已经被作者于2007-12-15 12:37:14编辑过]
回复

使用道具 举报

 楼主| 发表于 2007-12-15 10:24 | 显示全部楼层

<p><font size="4">从上面可以看出,用直接引用名称或者引用VBE里的顺序名称,可以做到绝对引用,但不能循环,多表时就麻烦。</font></p><p><font size="4">变量法可以方便多表写代码,但有一个缺点,就是工作表标签处的顺序不能随意改变,一旦改变,则指定的工作表相应变化。</font></p><p><font size="4">做了一个附件,大家测试看看,加深理解:</font></p><p><font size="4"></font>&nbsp;</p> E8U29SHV.rar (12.86 KB, 下载次数: 46)
回复

使用道具 举报

发表于 2007-12-15 10:46 | 显示全部楼层

<p>谢谢雨版~~</p><p>学习……</p>
回复

使用道具 举报

 楼主| 发表于 2007-12-15 12:58 | 显示全部楼层

<p></p><p><font size="5">zgwei050发了个“工作表的位置问题学习体会”帖子:</font></p><p><a title="VBA第5讲多个明细表的合并练习题学习体会" href="http://www.excelpx.com/forum.php?mod=viewthread&tid=33323&amp;replyID=&amp;skin=1" target="_blank"><font color="#000000" style="FONT-SIZE: 15px;">VBA第5讲多个明细表的合并练习题学习体会</font></a> <br/><font color="#008000">作者:<a href="http://www.excelpx.com/dispuser.asp?id=48559" target="_blank"><font color="#008000">zgwei050</font></a>&nbsp;&nbsp; 浏览:25&nbsp;&nbsp; 回复:4&nbsp;&nbsp;→ &nbsp;&nbsp;<a href="http://www.excelpx.com/forum.php?mod=forumdisplay&fid=141" target="_blank"><font color="#008000"><b><font color="#c71717">『VBA基础入门班』</font></b></font></a> </font><font color="#808080">2007-12-15 8:16:00&nbsp;&nbsp;</font> </p><p><hr style="BORDER-TOP: #b3b3b3 1px dashed; WIDTH: 98%; BORDER-BOTTOM: 0px; HEIGHT: 0px;"/><hr/></p><p></p><p></p>
回复

使用道具 举报

发表于 2007-12-15 13:04 | 显示全部楼层

<font size="6">雨版就是厉害,这么复杂的问题都让你讲清楚了。又学了一招。</font>
回复

使用道具 举报

 楼主| 发表于 2007-12-15 13:31 | 显示全部楼层

<strong><font face="Verdana" color="#61b713">至尊宝_98_76</font></strong>[em23]
回复

使用道具 举报

发表于 2007-12-15 14:29 | 显示全部楼层

study
回复

使用道具 举报

发表于 2007-12-15 16:03 | 显示全部楼层

学习一下,感谢分享。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-19 23:05 , Processed in 0.310402 second(s), 6 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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