【问题标题】:Using MATCH function without blank cells使用没有空白单元格的 MATCH 函数
【发布时间】:2013-08-20 16:01:05
【问题描述】:

我的excel表格如下

当我使用以下公式时,结果是 8

=MATCH(5;B8:AS8;0)

我想扩展这个公式;不将空白单元格添加到范围 (B8:AS8)。

我的意思是如果我不将空白单元格添加到范围结果将是 3

我必须使用哪个函数来扩展我的公式?

【问题讨论】:

    标签: excel excel-formula excel-match


    【解决方案1】:

    试试这个:

    =COUNT(B8:INDEX(B8:AS8,MATCH(5,B8:AS8,0)))
    

    【讨论】:

      【解决方案2】:

      试试这个(基本上,你正在减去空白单元格):

      =MATCH(5,B8:AS8,0)-COUNTIF(B8:AS8,"")

      【讨论】:

      • 或者,您可以使用 Countblank 代替 Countif
      • 谢谢,但这不是正确的算法。当我尝试将您的建议与“5”一起使用时,结果为 3。是的,这是正确的,但如果我将“5”更改为“1”或“9”,结果不正确。
      • 我又看了一遍,现在明白你的意思了。 Countif() 甚至 Countblank() 都不能解决这个问题。那么我将不得不打折我自己的答案。很高兴您发现 @tigeravatar 的回答很有用。
      【解决方案3】:

      下面使用 MATCH 来查找想要的元素的位置,并使用 COUNTBLANK 删除列表开头和找到的元素位置之间的所有空白:

      在您的具体情况下,您可能会使用

      =MATCH(5,$B$8:$AS$8,0)-
       COUNTBLANK(INDIRECT("R8C2:R8C"&MATCH(5,$B$8:$AS$8,0),FALSE))
      

      如果搜索的对象在列表中不存在,则返回#N/A。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-05-08
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多