excel,如何用公式查找J列某个数值对应的前一列数的倒数第二个数值?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了excel,如何用公式查找J列某个数值对应的前一列数的倒数第二个数值?相关的知识,希望对你有一定的参考价值。

如图,是在 I 列找出(-2002)但是这些数据后面的一列 必须符合(7009)这个值,最后返回的值是找出的(-2002)这些数中每一个数倒数第二单元格的数据。求大神帮写一个公式,非常感谢

参考技术A

'自定义公式-按ALT+F11-插入模块-粘贴代码-将表格另存为启用宏的格式
Function 找位置(a As Range, b As String, c As String)
For I = 3 To a.Cells(65536, 1).End(xlUp).Row
If a.Cells(I, 1) = b And a.Cells(I, 2) = c Then
找位置 = a.Cells(I - 2, 1)
Exit For
End If
Next
End Function

参考技术B =INDEX(I:I,MATCH(7009,J:J,0)-2)
这个就是公式。
这个就是公式。
但是你表里有2个7009,怎么办?为什么目标是第一个?追问

因为7009对应的不止一个(还有很多7009截图不出来),我只要的是7009对应的-2002倒数第二个的数

追答

那么为什么不返回图上这个空白(也就是0)值?

追问

需要返的呀,可是自己写的返不出那么多的,有的7009对应的也是-2002

追答

用这个,可以返回所有的符合条件的值。

=INDEX(I:I,SMALL(IF((J:J=7009)*(I:I=-2002),ROW(I:I)-2,9999),ROW(A1)))

追问

谢谢,非常感谢。就是要这个

本回答被提问者采纳

EXCEL如何把第二列的数据按照第一列数据排序,第二列的数据少于第一列

怎样快速把F列数据按照名称添到C列

C2输入

=IFERROR(VLOOKUP(A2,E:F,2,),"")

下拉

参考技术A 假定数值在C列
d1输入=IF(COUNTIF(B:B,A1)=0,"",INDEX(B:B,MATCH(A1,B:B,0)))
e1输入=if(d1="","",vlookup(d1,b:c,2,0))
选定两列公式下拉
复制C、D两列
点击B列>右键>选择性粘贴>数值>确定
删除D、E列
参考技术B C2公式:
=IFERROR(INDEX(F$2:F$7,MATCH(A2,E$2:E$7,)),"")
然后选中C2,下拉填充公式。
参考技术C C2输入=IF(iserror(vlookup(A2,E:F,2,0)),"",vlookup(A2,E:F,2,0))向下填充。 参考技术D D2=VLOOKUP(A2,E:F,2,0) 然后从D2下拉填充公式即可

以上是关于excel,如何用公式查找J列某个数值对应的前一列数的倒数第二个数值?的主要内容,如果未能解决你的问题,请参考以下文章

如何用vlookup不提取第一列内容,而提取最后一列的数据?或用其他函数也行!

如何按顺序提取EXCEL里其中一列数据(符合指定条件的)依次显示在另一列里

如何用EXCEL函数把多行多列按顺序转为多行一列

在EXCEL中,如何通过公式查找对应的数值?

EXCEL里怎样引用某数值对应的另一列的值?

EXCEL如何把第二列的数据按照第一列数据排序,第二列的数据少于第一列