excel图表快速移动单元格——End属性
发布时间:2023-05-21 15:33:31
我是一个急性子,干什么事都希望马上能够完成,也希望马上能够知道事情的结果,去什么地方也希望马上能够到达目的地。我不知道大家是不是都跟我一样,但我知道Excel中有满足我们这些急性子人的快速功能。
下图所示为带有一组数据的工作表,活动单元格(也称为当前单元格)为单元格A1。按下组合键,当前单元格会快速移动到单元格A10;接着按下组合键,当前单元格会快速移动到单元格C10;再按下组合箭,当前单元格会快速移动到单元格C1;再按下组合箭,当前单元格又回到单元格A1。
现在,在Excel中打开宏录制器(即单击“开发工具”——“录制宏”),从当前单元格A1开始,按上面所述的方法,使用 Ctrl+方向箭组合箭快速移动单元格,即从A1移至A10再移至C10再移至C1最后回到A1,最后关闭宏录制器(即单击“开发工具”——“停止录制“)。
宏录制器录制的代码如下:
Sub 宏1()
‘
‘ 宏1 宏
‘
‘
Selection.End(xlDown).Select
Selection.End(xlToRight).Select
Selection.End(xlUp).Select
Selection.End(xlToLeft).Select
End Sub
将录制的宏代码与对应的操作解析如下所示:
观察宏录制的代码和相应的解析,可以看出Selection代表当前活动单元格,单元格对象的End属性使单元格快速移动到同一列或行的末尾或者开头,其括号内的参数值指示单元格移动的方向。
End属性的语法表达式为:
Range对象.End(Direction)
返回一个Range对象,代表连续区域内的一个单元格,该单元格在该区域的末尾或开头。
说明:
Range对象代表区域内的任一单元格。也就是说,不一定是上文所演示的第一个单元格,可以是其它任何单元格。
参数Direction的取值及说明如下:
以本文开头所示的工作表为例,说明End属性的使用。
下面的语句:
Range(“B5”).End(xlUp).Select
选择单元格B1。
下面的语句:
Range(“B5”).End(xlDown).Select
选择单元格B10。
下面的语句:
Range(“B5”).End(xlToLeft).Select
选择单元格A5。
下面的语句:
Range(“B5”).End(xlToRight).Select
选择单元格C5。
注意:上面的示例均为在同一行或列中连续的单元格区域中移动,也就是说区域中没有空单元格。如果列或行中存在空单元格,那么在向下或向右移动时,End属性将单元格移动到同一列或行中空单元格之前的那个单元格;在向上或向左移动时,End属性将单元格移动到同一列或行中空单元格之后的那个单元格。(我们可以在工作表中输入一些数据,并有意在数据之间留有空单元格,然后使用Ctrl+箭头方向键试验,体会Excel是怎么快速移动单元格的)
一般,我们使用End属性查找连续单元格区域的最后一个单元格所在的行或列。
仍然以本文开头所示的工作表为例,下面的语句:
Range(“A1”).End(xlDown).Select
选择单元格A10。即列A中有数据的单元格区域的最后一个单元格。
继续!下面的语句:
Range(“A10”).End(xlDown).Select
选择单元格A1048576(如果是Excel 2003则为A65536),即列A中的最后一个单元格。换句话说,以有数据的单元格区域的最后一个单元格为起点,结合参数值xlDown(向下移)使用End属性,活动单元格将移动到工作表中该列或该行所在的最后一个单元格。呵呵,有点意思了!
再试试下面的语句(Excel 2007及以上版本):
Range(“A1048576”).End(xlUp).Select
或者是(Excel 2003及以下版本):
Range(“A65536”).End(xlUp).Select
选择单元格A10。也就是列A中有数据的单元格区域的最后一个单元格。
我们来小结一下。
类似于本文开头所示的工作表,如果列A中的单元格区域放置着连续的数据,即表中的单元格区域A1:A10,我们要找到列A中存放数据的最后一个单元格,有两种方法。第一种是从单元格A1开始使用End属性向下移至A10,即语句Range(“A1”).End(xlDown).Select。第二种是从工作表列A中的最后一个单元格开始向上移至A10,即语句Range(“A1048576”).End(xlUp).Select。
但是,如果在A1:A10中某个单元格为空(假设是单元格A5),那么语句Range(“A1”).End(xlDown).Select就不会移至单元格A10,而是移至单元格A4。所以,第一种方法不保险,仅在能确保单元格区域连续的情况下使用。通常,我们偏向于使用第二种方法,即从工作表中列中的最后一个单元格向上移,确保能移至该列中最后一个有数据的单元格上。
看看使用第二种方法选取单元格区域最后一个单元格的语句,对于Excel 2007之前或之后的版本,由于行数不同,使用的单元格也不一样:Range(“A1048576”)或Range(“A65536”)。
在本系列前面的文章中曾介绍,Application对象有一个Rows属性,可以返回工作表所在的行。该属性也可以返回工作表中的总行数,语句如下:
Rows.Count
如果是Excel 2003,则返回值65536;如果是Excel 2007及以后的版本,则返回值1048576。
因此,工作表列A中处于最底端(即最后)一个单元格可表示为:
Range(“A” & Rows.Count)
从而上述第二种方法的代码也可以写为:
Range(“A” &Rows.Count).End(xlUp).Select
同样是选择单元格A10(即列A中有数据的单元格区域的最后一个单元格)。并且,该代码更具有通用性,这样就不怕Excel的版本问题了。
注意:上面是以列为例来说明如何选取某列中的最后一个有数据的单元格,对于行来说,如何选取某一行中最后一个有数据的单元格,与上面的方法相同,只是需要修改相关参数。
猜你喜欢
- Word2007提供了丰富的图片编辑功能,可以直接在Word文档中对图片进行编辑、修改,甚至还可以为图片添加一些特效等。很多时候我们为了满足
- 随着科技的飞速发展,可以说我们的生活已经离不开电脑了。当我们的电脑出现死机的故障时,很多小伙伴都不知道电脑经常死机的原因是什么,电脑经常死机
- 如何在Word 2007中自动设置列表格式?您可以使用Word 2007自动套用格式功能将自动套用格式创建编号和项目符号列表。此功能也适用于
- 对于win10系统来说,有一个不错的分屏功能,那么你知道怎么进行简单的分屏设置服务,为此系统屋给你提供简单的win10进行屏幕分屏方法介绍,
- 1 查找:ctrl+enter两键组合 替换为空2 查找——格式——自动换行,替换为空 3 替代里面 按 ALT+
- 第1步,打开Word2013文档窗口,选中需要设置文本格式的SmartArt图形形状。然后右键单击该形状,并在打开的快捷菜单中选择“设置形状
- 在使用Excel的过程中,我们往往先把表格根据要求做好,这时单元格的列宽已经固定好了,但有的列字符数目不等。比如在录入家庭住址时,有的家庭住
- Excel表格中动态下拉列表怎么制作通过设置数据验证,可以直接引用某个区域作为序列来源,完成下拉列表的效果,但是这样生成的下拉列表中的条目不
- 下面我们再以PowerPoint2007为例,介绍插入Word表格具体操作步骤。1.在演示文稿编辑模式中,单击功能区的“插入”选项卡。2.单
- Win10任务栏透明化是一个非常火热的话题,经常有人在咨询如何设置。小编在网上找了一圈,不少都是说使用控制面板,但是小编找了一下一直没有找到
- 我们平时在使用电脑时候,打开任务栏,发现任务栏的软件图标变成了一个变色的方块,这是怎么回事呢?这是因为系统遇到缓存文件出现问题的时候,任务栏
- 我们都知道Word主要是用来编辑文本文档或者表格文档的,但是要是需要画直线的画在Word里应该怎样画呢?下面小编就为大家介绍在word文档中
- 在Excel2010工作表中,用户可以将被选中单元格中的小数设置分数表示,Excel2010的分数格式将小数四舍五入为值最接近的分数。在分数
- 有的时候,我们需要将自己单位的公章附在Word文档中,这可成为了一个难题,用Photoshop等设计软件制作,对于绝大多数人而言,难度太大。
- win10自动更新是win10系统带来的便捷功能。当用户不使用计算机时,打开win10自动更新功能的计算机会自动更新计算机,因此用户不必关注
- excel2019怎么排序?这篇文章主要介绍了excel2019排序教程,需要的朋友可以参考下excel的排序功能比较实用,特别是在统计名次
- 1. Shift + Delete键 = 剪切当我们选中简历表格里的一段文字后,按住Shift并按动Delete键就相当于执行了剪切命令,所
- 1.打开excel2016表格,在一个空白单元格输入计数函数“=subtotal(3,A2:A1000)”, 2.
- 解决word2010插入图片空白问题步骤: 当内存不够或者Word程序崩溃时,可能会导致系统对程序默认设置的更改。
- Excel2007如何将列名显示方便计数使用?很多朋友并不是很清楚,其实方法很简单的,下面小编就为大家详细介绍一下,来看看吧在excel20