楼主: 江夏雁
1786 3

[问答] 关于一个很多人理解错误的函数 [推广有奖]

  • 20关注
  • 2粉丝

朋友

教授

57%

还不是VIP/贵宾

-

威望
0
论坛币
565 个
通用积分
5.4453
学术水平
8 点
热心指数
9 点
信用等级
-4 点
经验
40942 点
帖子
843
精华
0
在线时间
613 小时
注册时间
2010-6-24
最后登录
2025-2-26

楼主
江夏雁 在职认证  发表于 2014-7-14 18:24:13 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
标题起的吸引人些……。其实,我是想问有没有更好的,表示“如果有数据,则返回前一行的值”的函数,比如这里,希望返回4(即数据11的行的前一行)



071401.jpg

j = Cells(4, 2).End(xlDown).Row
debug.print j
9



也就是j=9
似乎如果开始就有数据,它就会一直找到开始没有数据的行
如果开始没有数据,它就会一直找到有数据的行

和一般的认识不同,它不是‘开始找到有数据的行并返回行值’,要视情况而定




071402.png
而上图以下代码,则得6
j = Cells(4, 2).End(xlDown).Row

debug.print j
6

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:debug Cells print cell Down

若无人伴你 愿你成你自己的太阳

沙发
ilovepoolf3 发表于 2014-7-15 08:14:31
你想要做的事是要用offset函数,而不是用end()

藤椅
shacool 发表于 2014-7-19 11:35:22
Cells(4, 2).End(xlDown).Row 没错啊就是Cells(4, 2)开始向下查找,查找第一个非空的单元格

板凳
江夏雁 在职认证  发表于 2014-7-19 14:58:27
shacool 发表于 2014-7-19 11:35
Cells(4, 2).End(xlDown).Row 没错啊就是Cells(4, 2)开始向下查找,查找第一个非空的单元格
多谢回答!
那是不是应该返回5?
但实际返回的是9

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-2 15:57