永发信息网

excel match&row函数

答案:3  悬赏:30  手机版
解决时间 2021-11-30 01:42
  • 提问者网友:我是女神我骄傲
  • 2021-11-29 16:26
excel match&row函数
最佳答案
  • 五星知识达人网友:雪起风沙痕
  • 2021-11-29 17:54
补充下qinqh_ylx的回答。
这个是一个数组函数,要CTRL + SHIFT + 回车三键操作。遗憾的是写错了。。。。
=SUM(IF(MATCH(MONTH(B3:B16),MONTH(B3:B16),0)=ROW(B3:B16)-2,1))
或者
=SUM(IF(MATCH(MONTH(B3:B16),MONTH(B3:B16),0)=ROW(B1:B14),1))
才对。
MATCH是寻找符合条件的行号(该范围内的),和VLOOKUP类似的,他只能返回第一次出现的。
ROW()是行号,只为了提取1~14的数组。比如ROW(A1) 返回1 ROW(A1:A10)则返回1到10的数组。

希望能够帮到你。
全部回答
  • 1楼网友:过活
  • 2021-11-29 20:57
这个应该是求B3:B16单元格区域中,共有几个月的日期。
MONTH求月份,MATCH判断该月份是不是第一次出现,如果是得到1,否则为0
最后用SUM求出总共有几个月的日期。
  • 2楼网友:怙棘
  • 2021-11-29 19:31
这是个数组公式,回车时得同时按Ctrl和Shift键。

从里到外解释。

ROW(单元格)返回单元格所在的行,如ROW(A5)返回5

MONTH(日期)返回日期的月份,如MONTH(today())返回7

MATCH(参数1,单元格区域,0)返回参数1在单元格区域的位置,0表示精确查找。如A3到D3里分别是 3、b、小王、9,那么 MATCH("小王",A3:D3,0)返回3,即小王在A3:D3这个区域的第3个位置。

IF(条件,参数1,参数2)如果条件成立,返回参数1,否则返回参数2(如果参数2忽略,返回FALSE),如IF(2>1,"对","错")

SUM求和,你知道的。

在Excel里,逻辑值TRUE和FALSE相当于1和0。

我怀疑你公式中的-3应该是 -2,这样的话,整个公式就求有几个不重复的日期。

如果真是这样,公式可以简化为:
=SUMPRODUCT(1/COUNTIF(B3:B16,B3:B16))
确保B3:B16都有日期,正常回车。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯