VBA中range的find方法⑥ 您所在的位置:网站首页 excel中清除格式在哪里找到 VBA中range的find方法⑥

VBA中range的find方法⑥

2023-06-06 06:46| 来源: 网络整理| 查看: 265

使用range.specialcells(type,value)查找最后一行

再指定的range范围内,查找某类特殊的单元格

其中type为目标单元格属于的类型

value为目标单元格应该包含哪类内容(可选参数)

其对应excel“查找和选择”功能中的定位条件

可以看到定位条件中有“最后一个单元格(s)”选项

但实际上specialcells与usedrange并没有区别,

其也会将设置过格式的空单元格认定为最后一行所在的单元格

同样删除单元格的操作也会影响specialcells与usedrange的判断

将第六行删除

使用end属性可以正确得到最后一行

但如果使用specialcells则最后一行仍然是删除后的第六行

出于效率等方面因素,用户删除等操作并不总是即使更新到excel内部数据结构,

所以导致specialcells和usedrange无法取得最新的末行位置

使用range.find方法查找最后一行

cells.find("*")

在单元格中查找第一个出现的非空单元格

其中参数为按行查找,与从后向前查找,这样对后一个单元格所在的位置即第一个非空单元格

find方法可以正确处理最大行号(表格中间没有数据的仍然适用)

不受格式化的空单单元格的影响

但是,find单元格无法处理被筛选的单元格

其在查询最后一行时,会查询到筛选完毕后的最后一行

如果不想受格式化单元格,筛选等影响查询最后一行,则仍然使用最初的循环

同样是向上查找最后一行,找到后退出do while循环



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有