簡體   English   中英

如果滿足某些條件,Excel 用數字計算單元格

[英]Excel Count cells with number if certain conditions are met

我想找到 NO2 列中包含數字的單元格的百分比(例如),只考慮在某個小時內某個月份下降的單元格 - 例如,一小時內有多少個單元格包含 NO2 列中的數字一月份的每一天。

我一直在嘗試做1 - COUNTIF(condition,"*")/COUNTA(condition) ,但是我在寫條件部分時遇到了麻煩。

狀況(考慮三個月)。 它給了我一個 $VALUE! 如果我嘗試將其放入COUNTIF則會出錯

IF($C$1:$C$8985="January",
IF($B$1:$B$8985="1:00",$E$1:$E$8985,""),
IF($C$1:$C$8985="February",
IF($B$1:$B$8985="1:00",'$E$1:$E$8985,""),
IF($C$1:$C$8985="December,
IF($B$1:$B$8985="1:00",$E$1:$E$8985,"")

在此處輸入圖片說明

嘗試使用=SUMPRODUCT()

=SUMPRODUCT(--(A:A="January"), --(B:B=TIMEVALUE("1:00")), --(ISNUMBER(C:C)))

你要替換的地方:

  • A:A與您的月份欄
  • B:B與您的時間列
  • C:C與您的 NO2 柱

添加“或邏輯”

如果你想使用OR 邏輯,你可以簡單地“添加”條件看起來像
--((A:A="January")+(A:A="February"))

=SUMPRODUCT(--((A:A="January")+(A:A="February")), --(B:B=TIMEVALUE("1:00")), 
    --(ISNUMBER(C:C)))

因此,這表示A柱可以JanuaryFebruary塔B的時間值1:00C列是一個數值。


這基本上創建了三個數組 - 每個條件都為 1 個。 它看起來像這樣:

{"January", "January", "January", "February"}  
{"1:00 AM", "1:00 AM", "2:00 AM", "1:00 AM" }  
{      1.0,       1.3,    "text",         4 }  

它將這些轉換為真/假

{True, True, True, True}
{True, True,False, True}
{True, True,False, True}
 ^^^^  ^^^^        ^^^^     << Counts the number where ALL are 'True'

當每個“索引”都返回 true 時,它​​會被添加到您的函數中。

如果這些數組的長度不同,則SUMPRODUCT()函數將返回錯誤。

 {True, True, True, True} {True, True,False, True} {True, True,False} ^^^^ ^^^^ *ERR << Returns error as the last array was smaller

暫無
暫無

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

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