標題:
[發問]請問:符合A欄條件,加總B欄之不重複值的項目個數
[打印本頁]
作者:
huangwed
時間:
2013-11-20 14:45
標題:
[發問]請問:符合A欄條件,加總B欄之不重複值的項目個數
如果我想設條件"等級"為A,就加總"品名"中的不重複項目個數,
(由於品名會不斷變動與新增,故不能以固定某品名來計算)
請問該使用何種函數運算?
希望能不使用VBA與陣列公式,謝謝!
[attach]16801[/attach]
作者:
aer
時間:
2013-11-20 20:36
本帖最後由 aer 於 2013-11-20 20:38 編輯
回復
1#
huangwed
=SUMPRODUCT((C2:C15="A")*(1/COUNTIF(D2:D15,D2:D15)))
複製代碼
作者:
huangwed
時間:
2013-11-20 21:04
回復
2#
aer
啊,我真是糊塗,把這個想得太複雜了!
萬分感謝~感謝萬分~
作者:
p212
時間:
2013-11-21 09:32
本帖最後由 p212 於 2013-11-21 09:38 編輯
回復
2#
aer
承1#發問圖示狀況
若C14儲存格變更為
A
(D14儲存格品名仍為橘子),以SUMPRODUCT((C2:C15="A")*(1/COUNTIF(D2:D15,D2:D15)))計算後其答案不為4。
請教aer大,就您提供的組合公式而言應如何修改?
謝謝賜教!
作者:
ML089
時間:
2013-11-21 09:49
回復
3#
huangwed
請注意! 2樓公式使用是有限制的,只能在各等級間項目不能重複。
例如 全部改為 香蕉 時,答案是0.375
作者:
ML089
時間:
2013-11-21 09:51
回復
1#
huangwed
這是陣列方式 =COUNT(0/(MATCH("A"&D2:D15,C2:C15&D2:D15,)=ROW(1:14)))
非陣列方式等中午有空再想看看
作者:
handsometrowa
時間:
2013-11-21 10:40
回復
2#
aer
請問能否幫我解釋一下這段
(1/COUNTIF(D2:D15,D2:D15))) 為什麼這第二個陣列裡面 要先用 1 除 後面那排
另外 COUNTIF 函數 是先列 範圍後取 是/否值 兩邊都放一樣的 他的判斷邏輯是什麼@@?
作者:
Hsieh
時間:
2013-11-21 10:51
本帖最後由 Hsieh 於 2013-11-21 10:55 編輯
回復
1#
huangwed
不使用VBA也不使用陣列公式那就將資料依據等級排序就會單純很多
=IF(COUNTIF(C:C,F1)=0,"",SUMPRODUCT(1/COUNTIF(OFFSET($C$1,MATCH(F1,$C:$C,0)-1,1,COUNTIF($C:$C,F1),),OFFSET($C$1,MATCH(F1,$C:$C,0)-1,1,COUNTIF($C:$C,F1),))))
[attach]16811[/attach]
作者:
aer
時間:
2013-11-22 12:33
回復
4#
p212
原公式如5#所說的,項目之間有重覆,計算後會產生小數點的問題。
可以在E欄新增一輔助欄,公式=C2&D2,向下複製
計算個數的公式更改為 =SUMPRODUCT((C2:C15="A")*(1/COUNTIF(E2:E15,E2:E15)))
作者:
aer
時間:
2013-11-22 12:37
回復
7#
handsometrowa
此公式是在計算不重覆的個數,如有相同的個數取倒數後再相加的值就變為1。例如:有二個項目相同,則倒數為0.5+0.5,結果就是1
作者:
bmouth
時間:
2013-11-24 01:15
在E2列打
=C2&":"&D2
整列都做
然後在 F2 打
=1/COUNTIF(E:E,E2)
整列都做
然後用以下公式就可得出答案
=SUMIF(C:C,"A",F:F)
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)