2017-07-27 63 views
1

excel question with specific needExcel的结合COUNTIFS并连接

上面的描述说明我的问题: 公式

=COUNTIFS(GamesOUT!$D$2:$D$4377,$A2,GamesOUT!$G$2:$G$4377,">0",GamesOUT!$A$2:$A$4377,">20089999",GamesOUT!$A$2:$A$4377,"<20099999") 

需求: 在上面的Excel公式我想用价值来代替数字“4377”在单元格B2中。

此外想用公式计算,以取代数20089999

(value in cell A2)*10000+9999

此外想用公式计算,以取代数20099999

[(value in cell A2)+1)]*10000+9999

我不能完全找到解决办法。一些计算器岗位处理这个问题,但在连击引号中引号把我扔了一个“死循环”

回答

0

使用字符串连接撰写里面COUNTIFS您的标准参数:

=COUNTIFS(GamesOUT!$D$2:$D$4377, $A2, 
      GamesOUT!$G$2:$G$4377, ">0", 
      GamesOUT!$A$2:$A$4377, ">" & (A2*10000+9999), 
      GamesOUT!$A$2:$A$4377, "<" & ((A2+1)*10000+9999)) 

剩下的就是为了使您的范围动态扩展到单元格B2指示的行,您可以使用INDIRECT,OFFSETINDEX。后者是非易失性的首选:公式只会在其来源发生变化时重新计算。所以,你需要做一些替代品:

GamesOUT!$D$2:$D$4377 --->GamesOUT!$D$2:INDEX(GamesOUT!$D:$D, B2)

,并为所有的参数范围(即是“静态”的4377结束)相似。这将是一个相当大的公式,但它会起作用。

=COUNTIFS(GamesOUT!$D$2:INDEX(GamesOUT!$D:$D, B2), $A2, 
      GamesOUT!$G$2:INDEX(GamesOUT!$G:$G, B2), ">0", 
      GamesOUT!$A$2:INDEX(GamesOUT!$A:$A, B2), ">" & (A2*10000+9999), 
      GamesOUT!$A$2:INDEX(GamesOUT!$A:$A, B2), "<" & ((A2+1)*10000+9999))