excel中如何返回某一行中的特定数值所在的列数

空ABCDEFG1啊簌我人饿他2000100如何返回第二行第一个不为零所在列的第一行的值,即在g2返回“人”... 空 A B C D E F G
1 啊 簌 我 人 饿 他
2 0 0 0 1 0 0
如何返回第二行第一个不为零所在列的第一行的值,即在g2返回“人”
展开
 我来答
s今生缘
高粉答主

2015-10-16 · 醉心答题,欢迎关注
知道大有可为答主
回答量:3.2万
采纳率:85%
帮助的人:4873万
展开全部
  1. 首先想到的是求第二行不等于0的最小列标,用=MIN((A2:F2<>0)*COLUMN(A2:F2)),且是数组公式,即同时按Shift+Ctrl+Enter结束公式编辑,会自动生成一对{},但是对于不符合的会返回时,取不到不等于0的最小列标;

  2. 所以可以转换一下求最大值,用10来倒减最小列标,得到最大列标,这样就不会取到不符条件的列标,取出的最大值,再用10来减,即得到最小列标:=10-MAX((A2:F2<>0)*(10-COLUMN(A2:F2))),这也是数组公式,即同时按Shift+Ctrl+Enter结束公式编辑,会自动生成一对{};

  3. 上面也是数组公式,可以用SUMPRODUCT函数来转一下,就成为普通公式,不需要三键齐按;

  4. 再用INDEX函数返回第一行相应列的值即可达到目的:=INDEX(1:1,SUMPRODUCT(10-MAX((A2:F2<>0)*(10-COLUMN(A2:F2)))))。

levi_wzh
2011-06-13 · 知道合伙人互联网行家
levi_wzh
知道合伙人互联网行家
采纳数:2160 获赞数:7468
excel公式,条件格式

向TA提问 私信TA
展开全部
=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行值
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
foxconn_fy
2011-06-13 · TA获得超过2515个赞
知道小有建树答主
回答量:1190
采纳率:0%
帮助的人:761万
展开全部
我想,你用100分来问这问题,不用是楼上的回答的这么简单吧。
也许你用到vba的可能性比较大,可以给我留言。我会处理的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Zipall
2011-06-13 · TA获得超过1.3万个赞
知道大有可为答主
回答量:8104
采纳率:42%
帮助的人:8566万
展开全部
假设要查找123在A1:D1中的列数

=match(123,a1:d1,)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0fbeb94fdb
2011-06-13 · TA获得超过1313个赞
知道小有建树答主
回答量:1001
采纳率:0%
帮助的人:469万
展开全部
楼上多了个逗号。。。。

=match(123,a1:d1)
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式