簡體   English   中英

Excel COUNT()vs COUNTIF()與數組

[英]Excel COUNT() vs COUNTIF() with arrays

我認為這應該是一個簡單的問題,但由於某種原因,我無法在任何地方找到解決方案。

我在excel中有一個冗長的公式,最終會返回一個由四個項組成的數組 - 即{1,2,0,0}。 我想計算結果數中有多少大於零。

當我在這個結果上使用=COUNT({1,2,0,0})時,我得到了預期的答案4.但是當我嘗試使用=COUNTIF({1,2,0,0}, ">0")它彈出一個錯誤,說我的公式有問題。

有什么我做錯了嗎? COUNTIF()是否有等效的數組?

看來COUNTIF函數僅適用於范圍,而COUNT函數可以使用數組。

嘗試一下SUMPRODUCT 下面是我用來測試公式的示例的略微擴展形式。 它基本上檢查數組中的每個值是否大於0,如果是,則為其賦值1.然后SUMPRODUCT通過並將所有1加起來給出大於0的值的總數。

=SUMPRODUCT(IF({1,0,3,0,5,0,0,6,9,9,0,7,0}>0,1,0))

可能最簡潔的方法是將驗證檢查返回的TRUEFALSE值轉換為INT函數的數字。 TRUE轉換為1FALSE轉換為0 然后SUM的1和0。

=SUM(INT({1,2,0,0}>0))

或者正如Barry Houdini指出的那樣,您可以使用以下方法將布爾值強制轉換為int:

=SUM(({1,2,0,0}>0)*1)

要么:

=SUM(({1,2,0,0}>0)+0)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM