excel中如何查找一列中第一个0点并返回同一行另一列的值

例如A列:2 3 5 0 5 7 0 0
B列:4 5 6 7 4 4 2 2
检索后返回B列的7

D2输入

=INDEX(B:B,MATCH(0,A:A,))

追问

我实际需要的数据量共147个有多个0点,使用这个公式应该返回452,可是为什么会返回451.6027,可不可以改成返回列号呢

追答

你把公式单元格格式的小数点位数设为0,就返回452了
返回列号公式
=match(0,a:a,)

温馨提示:答案为网友推荐,仅供参考
第1个回答  2016-08-18

=INDIRECT("B"&MATCH(0,A1:A9,))


追问

我实际需要的数据量共147个有多个0点,使用这个公式应该返回452,可是为什么会返回451.6027,可不可以改成返回列号呢

追答

452四舍五入了,要进行单元格格式设置。要不发表格到3271614433qq。

第2个回答  2016-08-18
Sub test()

Dim x&,rng as range
x = Cells(Rows.Count, 1).End(xlUp).Row
For Each Rng In Range("a1:" & "a" & x)
If Rng = 0 Then
Rng.Offset(0, 2) = Rng.Offset(0, 1)
Exit Sub
End If
Next
End Sub
第3个回答  2022-03-03
EXCEL 从A列第一个数值0.119开始,每隔0.01向下取值,保存在C列,同时取同一行B列的值,保存在D列,若没有0.109,则向下取0.108,求公式
A列B列有500多个数据,要把取下来的值按顺序保存在C列D列
相似回答