2016-07-06 128 views
-1

根據存儲在另一個參數中的參數,我需要計算特定範圍的單元格(包含字符串或數字)中給定值的所有出現次數細胞。計算特定範圍內的值的發生(Excel)(無VBA)

我準備了一個簡單的Excel表格作爲例子(參見附圖):假設我想要計算BASE「100」的VALUE「4」的所有出現次數。結果應該是:2(C4 + C5)。

Attached image

我試圖用COUNTIFS和查找功能,但沒有結果。前者只考慮精確值(因此單元格C5中的4將被忽略),而我似乎無法向後者添加另一個條件 - BASE列。

事實是我需要用公式解決這個問題,沒有編程。

在此先感謝您的幫助!

+0

使用帶有通配符的countifs。 –

+0

嗨@ScottCraner感謝您的回覆!我考慮過這種情況,但在這種情況下只考慮C1,C3和C5單元。 –

+1

你是對的,看到我的答案在下面。下一次,請將數據直接粘貼到帖子中而不是圖片上,這樣我們就不需要重新輸入您已輸入的內容。 –

回答

0

使用SUMPRODUCT:

=SUMPRODUCT(($B$2:$B$10=100)*(ISNUMBER(SEARCH(4,$C$2:$C$10)))) 

enter image description here

0

有一對夫婦的其他方法,簡單的一個就是加入其中確定了你比賽的另一列,然後讓你的計算了筆結果該列。

Solution image

所以我們把我們要在一些參考單元找到值,則BASE比賽去的是G2,和我們正在尋找的價值遠遠在G3。

在列d我們把在公式中D2: 「= IF(B2 = $ G $ 2,IF(ISERR(SEARCH($ G $ 3 C2)),0,1),0)」

返回0,如果BASE的比賽,我們可以找到值的至少一個occurent

  • B2 = $ G $ 2 - 難道基列匹配,我們正在尋找
  • ISERR(SEARCH($ G的BASE $ 3,C2)) - 搜索VALUE是否返回錯誤(如果是,我們知道VALUE不存在)

將此公式複製到D列中的所有單元格,然後您可以使用簡單的SUM(D:D)來計算滿足條件的出現次數。


整潔但稍微複雜的替代方法是使用數組公式來計算匹配,並在一個公式中進行計數。這看起來像這樣:

「{= SUM(IF(B:B = $ G $ 2,IF(ISERR(SEARCH($ G $ 3,C:C)),0,1)))}」

與D列中的公式幾乎相同,但現在我們用B:B和C:C代替B2/C2等,並將SUM粘在整個事物上。如果您使用Ctrl + Shift + Enter完成編輯,而不是僅輸入,則會使其成爲數組公式。

Microsoft Array Formula Guidelines

NB:這不會在單個VALUE細胞計數的4多次出現。

p.s.假設你希望它在這種情況下實際返回3(你錯過了C7中的4)