""),COLUMN(A:E))))crtl+shift+enter结束公式 往下" />
乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > <em>excel</em>中如何“返回某一行中第一个非零<em>非空</em

<em>excel</em>中如何“返回某一行中第一个非零<em>非空</em

作者:乔山办公网日期:

返回目录:excel表格制作


EXCEL中按条件返回第一个非空单元格的值的方法如下:zd
1、公式法,可以在要返回值的单元格里输入下面的公式:
=INDEX(B2:F2,MIN(IF((B$1:F$1="A")*(B2:F2<>""),COLUMN(A:E))))
crtl+shift+enter结束公式 往下填充
2、编程法。
可以根据你的要求编写vba小程序,然后将返回值显示在指定的位置。

解此题的关键是首先要找到该行第一个非零非空数值的列标号。具体方法如下(以第一行为例):
1、用LOOKUP函数配合一个数组来解决:先建立一个数组0/(1:1<>0),利用除数不能为零的性质将非零非空的数值在数组中以0值的形式表示出来(其他为空为零的数值则显示为错误符号),再用LOOKUP函数将实际数值返回。公式为=LOOKUP(0,0/(1:1<>0),1:1)
2、用INDEX函数和MATCH函数组合解决:先用MATCH函数定位到第一个非零非空的数值的列号,再通过INDEX函数返回该数值。公式为=INDEX(1:1,MATCH(TRUE,1:1<>0,)) 该公式需要按组合键Ctrl+Shift+enter结束。
按补充,F2输入:=LOOKUP(1,0/(D2:D1000<>""),B2:B1000)

全是数组公式,,公式输完后,光标放在公式编辑栏同时按下CTRL+SHIFT+回车键,使数组公式生效。

C2=INDEX($A$1:$H$1,SMALL(IF($A$1:$H$1<>"",COLUMN($A$1:$H$1),256),B3))向下复制

如果直接求最后一个非空单元格的值可直接用下面的公式。

=INDEX($A$1:$H$1,MAX(IF($A$1:$H$1<>"",COLUMN($A$1:$H$1),0)))

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网