Excel精英培训网

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

[已解决]怎样确定某一列的有效行数

[复制链接]
发表于 2011-12-4 17:59 | 显示全部楼层 |阅读模式
在表格中,每列包含有效信息行数是不相等的,如何用VBA代码返回某一列中最后一个有效单元格的行号呢!
谢谢指教!
最佳答案
2011-12-4 18:43
代码取决于“有效单元格”如何定义。下面给两个示例:
(以下称有数据的最后一行为“末行”)

  1. [A65536].end(xlup).row '取得A列末行行号,适用于末行行号小于65536,且末行没有被隐藏的情况
复制代码

  1. Range("A:A").Find("*", LookIn:=xlFormulas, SearchDirection:=xlPrevious).Row  '取得A列末行行号,基本上通用。
复制代码
但如果你要取得最后一个公式所在行或者其他特殊的限定条件,则另当别论。
发表于 2011-12-4 18:07 | 显示全部楼层
何为"有效单元格"?

这样吗?
range("a:a").end(xlup).row
回复

使用道具 举报

发表于 2011-12-4 18:43 | 显示全部楼层    本楼为最佳答案   
代码取决于“有效单元格”如何定义。下面给两个示例:
(以下称有数据的最后一行为“末行”)

  1. [A65536].end(xlup).row '取得A列末行行号,适用于末行行号小于65536,且末行没有被隐藏的情况
复制代码

  1. Range("A:A").Find("*", LookIn:=xlFormulas, SearchDirection:=xlPrevious).Row  '取得A列末行行号,基本上通用。
复制代码
但如果你要取得最后一个公式所在行或者其他特殊的限定条件,则另当别论。
回复

使用道具 举报

 楼主| 发表于 2011-12-4 21:51 | 显示全部楼层
本帖最后由 hhczxe 于 2011-12-4 21:53 编辑

谢谢两位的解答,
其实简单说,所谓“有效单元格”就是最后的一个“非空单元格”
也就是说,我想得到某一列中,最后一个非空单元格所在的行号!
Benol 给的两种答案都试了,有效
Zipall 给的答案在立即窗口显示 的值总是1,不知为什么
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-6-4 07:33 , Processed in 0.389917 second(s), 7 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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