EXCEL公式應用:多條件求和,陣列公式應用2

來源:互聯網
上載者:User

http://community.csdn.net/Expert/TopicView1.asp?id=4488494

最近老毛病又犯,老是不仔細看題目……

CSDN - 專家門診 -

 
主  題:  
關於兩個條件AND 求和的問題
作  者:   zhuluzy (逐鹿)
信 譽 值:   100
所屬論壇:   Windows專區 Office使用
問題點數:   100
回複次數:   13
發表時間:   2005-12-29 13:51:46
     
 
     
例如下面的例子,            |   A      B        C      D_____________________________________     1  |   a1     10        a1    nm 2  |   b2     10        c3    nm 3  |   c3     10              nf 4  |   a1     10              nf 5  |   a1     10              nf 6  |   b2     10              nf 7  |   a1     10              nm 問:A列中的值存在於C 列,同時(並且-and),D列,必須等於 nm 的資料對 B列求和    使用什麼樣的方法??  兩個條件單獨求和都可以實現              條件1:  sum(sumif(a1:a7,c1:c2,b1:b7))              條件2:  sumif(d1:d7,="nm",b1:b7)           但是2個條件都滿足的行進行求和如何?呢? 最終結果應該是20
  回複人: scz123(小章) ( ) 信譽:124 2005-12-29 15:06:52 得分:0
 
 
 
{=SUM(SUMIF(A1:A7,C1:C7&(IF(D1:D7="mn","","a")),B1:B7))}
Top
 
  回複人: zhuluzy(逐鹿) ( ) 信譽:100 2005-12-29 16:01:33 得分:0
 
 
 
我試了一下,這樣寫是不正確的,但這種思路,我受教了,謝謝!錯誤原因是:           C1:C7&(IF(D1:D7="mn","","a") 雖然將C列,按照D列整理成為了一個條件範圍,但是對於A列滿足條件1但是重複的值,不論是否滿足條件2,都會被求和因為A列是重複的,而C列並不是和A列一一對應(C列是不重複的)所以這樣寫是不正確的
Top
 
  回複人: scz123(小章) ( ) 信譽:124 2005-12-29 16:03:46 得分:0
 
 
 
哦,樓主的是nm別弄錯了{=SUM(SUMIF(A1:A7,C1:C7&(IF(D1:D7="nm","","a")),B1:B7))}
Top
 
  回複人: scz123(小章) ( ) 信譽:124 2005-12-29 16:09:44 得分:0
 
 
 
哦,理解有誤,再考慮一下
Top
 
  回複人: zhuluzy(逐鹿) ( ) 信譽:100 2005-12-29 16:37:58 得分:0
 
 
 
我使用如下思路(利用了空列F),其中借用了小章的思路,我認為肯定可以,但好像還是不成功!!!!    鬱悶中......=SUM((d1:d7="nm")*(a1:a7=c1:c7&if(d1:d7="nm",a1,"")*D2:D11)
Top
 
  回複人: scz123(小章) ( ) 信譽:124 2005-12-29 16:38:08 得分:0
 
 
 
{=SUM(IF(D1:D7="nm",IF(NOT(ISNA(MATCH(C1:C7,A1:A7,0))),B1:B7,0),0))}有點複雜,呵呵還有問題的話,發給訊息給我,明天繼續
Top
 
  回複人: scz123(小章) ( ) 信譽:124 2005-12-29 16:43:39 得分:0
 
 
 
{=SUM((D1:D7="nm")*NOT(ISNA(MATCH(C1:C7,A1:A7,0)))*(B1:B7))}這樣也行
Top
 
  回複人: Yiqun_Zhao(藍帆·雨軒 Mail: yiqun_zhao@163.com) ( ) 信譽:133 2005-12-30 08:11:00 得分:0
 
 
 
這個很簡單的:在編輯欄輸入如下公式:=SUM(IF(($A$1:$A$7=$C$1)*($D$1:$D$7="nm"),$B$1:$B$7))同步選取Ctrl+Shift+Enter已完成公式,公式在編輯欄的表現形式為:{=SUM(IF(($A$1:$A$7=$C$1)*($D$1:$D$7="nm"),$B$1:$B$7))}結果:20
Top
 
  回複人: Yiqun_Zhao(藍帆·雨軒 Mail: yiqun_zhao@163.com) ( ) 信譽:133 2005-12-30 08:17:00 得分:0
 
 
 
友情提示:scz123(小章):您的公式有誤,原因如下:雖然您的公式可以得到正確答案20,可是您在得到答案後,將A列為a1的對應行的D列中的nf改為nm,您的公式產生的答案依然是20(而不是30),所以您的公式是存在問題的!參考公式如下:{=SUM(IF(($A$1:$A$7=$C$1)*($D$1:$D$7="nm"),$B$1:$B$7))}
Top
 
  回複人: scz123(小章) ( ) 信譽:124 2005-12-30 08:33:00 得分:0
 
 
 
不會吧? Yiqun_Zhao 的意思是把d4改成nm吧,但c4值是空的,總的有效行只有2行(1、2行),所以結果應該是20,符合樓主的意思將A列為a1的對應行的D列中的nf改為nm,公式產生的答案依然是20的原因是 C列只有兩個有效值{=SUM((D1:D7="nm")*NOT(ISNA(MATCH(C1:C7,A1:A7,0)))*(B1:B7))}D1:D7="nm": D列必須等於nmNOT(ISNA(MATCH(C1:C7,A1:A7,0))): C列值必須在A列中存在按樓主的意思,應該是沒問題了公式 {=SUM(IF(($A$1:$A$7=$C$1)*($D$1:$D$7="nm"),$B$1:$B$7))}應該只符合A列等於a1($C$1),D列等於nm的求和,對應行1、7,可能和樓主的意思不一樣了
Top
 
  回複人: Yiqun_Zhao(藍帆·雨軒 Mail: yiqun_zhao@163.com) ( ) 信譽:133 2005-12-30 11:01:00 得分:0
 
 
 
scz123(小章):如題,A列中的值存在於C列:表明的是A列中的值在C列中存在,而不是相反的C列中的值在A列中存在。也就是表明C列只是起到一個對A列篩選的作用,C列是否有空值沒有關係。呵呵。如果是要C列中的值在A列中要存在,那麼是按照您的思路做!
Top
 
  回複人: scz123(小章) ( ) 信譽:124 2005-12-30 12:50:00 得分:0
 
 
 
哦,原來還是我看錯了,哎,老毛病又犯了,總是不仔細看題目,呵呵,見笑見笑
Top
 
  回複人: scz123(小章) ( ) 信譽:124 2005-12-30 13:04:00 得分:0
 
 
 
那這樣應該就對了{=SUM((D1:D7="nm")*NOT(ISNA(MATCH(A1:A7,C1:C2,0)))*(B1:B7))}公式{=SUM(IF(($A$1:$A$7=$C$1)*($D$1:$D$7="nm"),$B$1:$B$7))}還沒考慮到C列的其它值
Top
 
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.