分享

Excel公式练习18:获取每行中第一个非空单元格

 L罗乐 2017-10-22

本次的练习是:如何使用公式获取每行中第一个非空单元格?例如下图1所示工作表,要求使用公式根据上半部分的表格求各项目的开工日期。

 1

也就是说,要求出单元格区域B2:G6的每行中第一个非空单元格对应的B1:G1中的日期。

 

先不看答案,自已动手试一试。



 

公式思路

先找到该行中第1个非空单元格的位置,然后获取第1B1:G1中该位置的值。

 

公式

在单元格B9中的数组公式如下:

=IF(COUNTA(B2:G2),INDEX($B$1:$G$1,MATCH(TRUE,B2:G2<>'',0)),'')

结果如图2所示。

 2

 

公式解析

首先,公式:

MATCH(TRUE,B2:G2<>'',0)

找出第2行单元格区域B2:G2中第1个非空单元格的位置,本例中为1

 

然后,将该值代入INDEX函数,即变成公式:

INDEX($B$1:$G$1,1)

得到单元格B1,即对应的第1行中B1:G1的值。

将该值代入后的公式:

=IF(COUNTA(B2:G2),B1,'')

然后,根据COUNTA函数的值来判断公式最后的值。

因为本例中B2:G2包含文本,因此最后的结果即为单元格B1中的值。

 

将该公式下拉至单元格B13,即可求出各项目对应的开工时间。

 

小结

  • 使用MATCH函数找到位置,使用INDEX函数获取相应位置的数据。

  • 使用<>””来生成代表空与非空单元格的数组。




下期预告:

Excel公式练习19:获取单元格区域中最长内容的单元格数据

如下图所示的工作表,在单元格区域A1:A7中有一组数据,如何使用公式获取该区域中最长内容的单元格数据?即单元格A2包含的文本“excelperfect”。

有兴趣的朋友可以先思考一下。



 

本文属原创文章,转载请注明出处。

欢迎在下面留言,完善本文内容,让更多的人学到更完美的知识。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多