excel match&row函式
- 2023-01-01
補充下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的陣列。
希望能夠幫到你。
這個應該是求B3:B16單元格區域中,共有幾個月的日期。
MONTH求月份,MATCH判斷該月份是不是第一次出現,如果是得到1,否則為0
最後用SUM求出總共有幾個月的日期。
這是個陣列公式,回車時得同時按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都有日期,正常回車。
上一篇:美容行業將來的趨勢如何?
下一篇:什麼叫老物件?