簡體   English   中英

在Excel中對SUMIFS使用OR邏輯功能

[英]Using OR Logical functions with SUMIFS in Excel

我在excel中有兩個工作簿,我將其中的一列復制到另一個。 我想復制一個列(例如A)的編號,如果另一列(例如B)等於“測試工具”或“硬工具”。 我已經編寫了這段代碼,無法正常工作,它只是給我總和零,這是錯誤的。 最后一個參數無關緊要,請忽略它。

"=SUMIFS('Tooling forecast template'!R6C17:R500C17,'Tooling forecast template'!R6C7:R500C7,""OR(=Test Tool, =Hard Tool)"" ,'Tooling forecast template'!R6C6:R500C6,""<>Actual tool/equipment change"")"

這是一種可以節省您鍵入大量SUMIF語句的方法,盡管它不會阻止Excel必須計算多個SUMIF。

=SUM( SUMIFS('Tooling forecast template'!R6C17:R500C17,'Tooling forecast template'!R6C7:R500C7, {"Test Tool", "Hard Tool"} ,'Tooling forecast template'!R6C6:R500C6,"<>Actual tool/equipment change") )

基本上,您使用值數組作為標准來計算SUMIF,然后將該SUMIF包裝在SUM中,以便將多個答案加在一起。

由於變量名較長,因此很難閱讀此示例。 這是一個簡單的示例,您想在其中添加一些數字,其中相應的字母為A或B ...

很長的路要走:

=SUMIFS(B1:B5, A1:A5, "A") + SUMIFS(B1:B5, A1:A5, "B")

簡短的方法:

=SUM( SUMIFS(B1:B5, A1:A5, {"A","B"}) )
 =IF(OR(CellToCheck="Test Tool", CellToCheck="Hard Tool"), CellToCopy, 0)

只需將兩個SUMIFS加在一起,就可以了!

=SUMIFS('Tooling forecast template'!R6C17:R500C17,'Tooling forecast template'!R6C7:R500C7,"=Test Tool" ,'Tooling forecast template'!R6C6:R500C6,"<>Actual tool/equipment change") + SUMIFS('Tooling forecast template'!R6C17:R500C17,'Tooling forecast template'!R6C7:R500C7,"=Hard Tool" ,'Tooling forecast template'!R6C6:R500C6,"<>Actual tool/equipment change")

使用A OR B與NOT((NOT A)和(NOT B))相同的事實。 例如,使用SUMIFS如果B = 1或C = 1,則對A中的條目求和:

=SUM(A1:A10) - SUMIFS(A1:A10,B1:B10,"<>0",C1:C10,"<>0")

您可以使用SUMPRODUCT達到相同的結果:

=SUM(A1:A10) - SUMPRODUCT(A1:A10,--(B1:B10<>0),--(C1:C10<>0))

這樣還行嗎?

注意:假設Col A包含要求和的值。 假設Col B包含工具類型。

=SUM(SUMIFS(A:A,B:B,"hard tool"),SUMIFS(A:A,B:B,"test tool"))

暫無
暫無

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

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