Re: [算表] sumproduct的欄位讀取

看板Office作者 (少年維持的煩惱)時間15年前 (2010/10/05 10:56), 編輯推噓2(202)
留言4則, 2人參與, 最新討論串2/2 (看更多)
首先感謝各位版友的幫忙,但好像是我把範例太簡化以致有點誤導了公式的寫法 版本一樣是03,故先不考慮簡化後的寫法,並把期間拉長為1~3月份; 我想做出來的是1~3月份的甲時數加總,所以 概念應該是類似這樣:=SUMPRODUCT((3>=$A$2:$A$10>=1)*($B$2:$B$10="甲")* ($C$2:$C$10)) 所以應該是6+4+7+3=20 但這樣代出來的答案竟連4月的8hr也計算進去了, 更奇妙的是若把(3>=$A$2:$A$10>=1)改寫為(1<=$A$2:$A$10<=3) 結果竟跑出了0來 難道一開始我的想法就錯了嗎? 先謝過各位版友了! >"< ※ 引述《ray740806 (少年維持的煩惱)》之銘言: : 軟體:excel : 版本:all : 我在計算加總時因A欄位的資料量隨時都有可能做增減 : 但在使用sumproduct讀取欄位時,一般的公式寫法都是($A$1:$A$1000......) : 若想改成類似(A:A.....)來直接讀取似乎又無法成立, : 想請問是不是有其他有公式可以替代之。 : EX: : 月份 客戶 時數 : 1 甲 6 : 1 乙 3 : 2 甲 4 : 2 甲 7 : 3 甲 3 : 3 丙 10 : 4 甲 8 : 4 丁 1 : 5 乙 1 : 欲加總2、3月甲客戶的總時數; : 我寫的原式為=SUMPRODUCT(($A$2:$A$9>=$A$4)*($A$2:$A$9<=$A$6)* : ($B$2:$B$9=$B$2)*($C$2:$C$9)) : 想試問有無可將($A$2:$A$9)等部份代換為更精簡的寫法? : 謝謝。 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 125.233.169.211 ※ 編輯: ray740806 來自: 125.233.169.211 (10/05 10:58)

10/05 11:05, , 1F
=SUMPRODUCT((A:A>=1)*(A:A<=3)*(B:B="甲"),C:C)
10/05 11:05, 1F

10/05 11:30, , 2F
成功了!!感謝樓上,請問為什麼改成這樣就可以了呢?
10/05 11:30, 2F

10/05 13:28, , 3F
其實是把sum(if(()*(),,))的陣列想法想到sumproduct
10/05 13:28, 3F

10/06 15:53, , 4F
原來如此,已解決,謝謝板友^^"
10/06 15:53, 4F
文章代碼(AID): #1CgfFTSs (Office)
文章代碼(AID): #1CgfFTSs (Office)