Excel精英培训网

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

[已解决]如何向上查找遇到的第一个数

[复制链接]
发表于 2010-2-9 17:12 | 显示全部楼层 |阅读模式

如何向上查找遇到的第一个数,并自动把距离填到另一个表格中。如下:要查的数列中的数字会重复出现,当再重复出现的时候,会引起其它的距离的相应变化。最近出现的6的距离为1,最近出现的7的距离为5,最近出现的3的距离为9,最近出现的2的距离为11;当6后面再次出现2时,则2的最近出现的距离会自动变为1,而6的距离会变成2,5的距离会变成3,

要查的数列最近遇到的第一个数的距离(这列是为了说明的需要)要查的数最近遇到的第一个数的距离(能够自动变化)
7 14
2 211
81639
2 413
4 52
41361
5 75
211816
1 910
39109
5
5 
6 
75
14
93
52
61

最佳答案
2010-2-9 17:30
QorqjqSX.rar (6.32 KB, 下载次数: 170)
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2010-2-9 17:30 | 显示全部楼层    本楼为最佳答案   

QorqjqSX.rar (6.32 KB, 下载次数: 170)
回复

使用道具 举报

发表于 2010-2-9 17:40 | 显示全部楼层

=IF(COUNTIF($A$1:$A$18,D2),INDEX($B$1:$B$18,MAX(IF($A$1:$A$18=D2,ROW($1:$18)))),"查无此人")

数据在A,B列

回复

使用道具 举报

发表于 2010-2-9 18:51 | 显示全部楼层

自定义函数

Function findlate(rng As Range, rng1 As Range)
    Application.Volatile
    findlate = rng1.Find(what:=rng.Value, searchdirection:=xlPrevious).Offset(, 1)
End Function

用法,findlate(参数1,参数2)

参数1,是要查找的内容,参数2,要查找内容所在的区域(Range)。

例:findlate(A1,A1:A3)=1

A   B

1   6

2   8

1   2

回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-4-19 16:30 , Processed in 0.334187 second(s), 11 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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