分享

UsedRange与CurrentRegion的应用 | VBA实例教程

 gblhp 2015-02-16

除非注明,文章均为 战战如疯 原创,转载请保留链接: http://www./cat1/60.html,VBA交流群273624828。

UsedRange和CurrentRegion(不区分大小写)是应用非常频繁的两个属性,Usedrange是工作表的属性,即其使用时应该是sheet1.usedrange、sheet2.usedrange这种形式,而currentregion是单元格的属性,即其使用应该是range("A1").currentregion或cells(1,1).CurrentRegion这种形式。先从字面意思上来看,usedrange就是已经使用的区域的意思,也就是说sheet1.usedrange表示的是sheet1表格中已经使用的区域,怎么理解这个已经使用的区域呢?已经使用的区域就是指鼠标从整个表格最左上角的那个非空单元格一直拖动到整个表格最右下角的那个非空单元格所选择的区域。而CurrentRegion的字面意思就是当前区域,那个range("A1").currentregion就是指A1单元格当前所在的那个区域,在这里当前所在的区域就是指当前单元格所在的以空行和空列隔开的区域。还是举例来说明。假设我的sheet1单元格中存在如下内容

usedrange与currentregion1

那么按上面说的sheet1.usedrange就是从最左边上的非空单元格B2一直到最右下角的非空单元格F6所代码的区域,即range("A2:F6"),如下图的绿色区域

usedrange的区域

那么再看currentregion,我们说过currentregion是excel单元格的属性,那么我们来看range("C3").currentregion代表哪块区域呢?按之前所说的,range("C3").currentregion代表由空行和空列所围成的区域,那么C3向上数第一个空行的第1行,向下数第1个空行是第5行,向左数第1个空列是A列,向右数第1个空列是E列,那么这4个围成的区域自然就是B2:D4的区域了,如下图4个红色行列所围成的区域即range("C3").currentregion。

currentregion

看了上面的例子你是不是对UsedRange和CurrentRegion有一个大体的了解了呢?那么用下面这个简单的程序自己来测试一下吧

sub test()

sheet1.usedrange.select    '选中sheet1已使用区域

range("A1").currentregion.select

range("B2").currentregion.select

range("F6").currentregion.select

end sub

往sheet1中随便填些数,按F8单步运行,看每一步所选择的区域和你所想的是不是一样呢?

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多