excel中如何返回某一行中的特定数值所在的列数
空ABCDEFG1啊簌我人饿他2000100如何返回第二行第一个不为零所在列的第一行的值,即在g2返回“人”...
空 A B C D E F G
1 啊 簌 我 人 饿 他
2 0 0 0 1 0 0
如何返回第二行第一个不为零所在列的第一行的值,即在g2返回“人” 展开
1 啊 簌 我 人 饿 他
2 0 0 0 1 0 0
如何返回第二行第一个不为零所在列的第一行的值,即在g2返回“人” 展开
8个回答
展开全部
首先想到的是求第二行不等于0的最小列标,用=MIN((A2:F2<>0)*COLUMN(A2:F2)),且是数组公式,即同时按Shift+Ctrl+Enter结束公式编辑,会自动生成一对{},但是对于不符合的会返回时,取不到不等于0的最小列标;
所以可以转换一下求最大值,用10来倒减最小列标,得到最大列标,这样就不会取到不符条件的列标,取出的最大值,再用10来减,即得到最小列标:=10-MAX((A2:F2<>0)*(10-COLUMN(A2:F2))),这也是数组公式,即同时按Shift+Ctrl+Enter结束公式编辑,会自动生成一对{};
上面也是数组公式,可以用SUMPRODUCT函数来转一下,就成为普通公式,不需要三键齐按;
再用INDEX函数返回第一行相应列的值即可达到目的:=INDEX(1:1,SUMPRODUCT(10-MAX((A2:F2<>0)*(10-COLUMN(A2:F2)))))。
展开全部
=INDEX(1:1,MIN(IF(2:2<>0,COLUMN(2:2))))
数组公式以ctrl+shift+enter三键组合结束输入
如果是要在G2输入公式的话改为
=INDEX(1:1,MIN(IF(A2:F2<>0,COLUMN(A2:F2))))
数组公式以ctrl+shift+enter三键组合结束输入
楼上的公式只适合查找最后一个不为0的数据对应的第1行值
数组公式以ctrl+shift+enter三键组合结束输入
如果是要在G2输入公式的话改为
=INDEX(1:1,MIN(IF(A2:F2<>0,COLUMN(A2:F2))))
数组公式以ctrl+shift+enter三键组合结束输入
楼上的公式只适合查找最后一个不为0的数据对应的第1行值
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我想,你用100分来问这问题,不用是楼上的回答的这么简单吧。
也许你用到vba的可能性比较大,可以给我留言。我会处理的。
也许你用到vba的可能性比较大,可以给我留言。我会处理的。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
假设要查找123在A1:D1中的列数
=match(123,a1:d1,)
=match(123,a1:d1,)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
楼上多了个逗号。。。。
=match(123,a1:d1)
=match(123,a1:d1)
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询