Board logo

標題: 【討論】多條件查找(函數法) [打印本頁]

作者: sunnyso    時間: 2013-6-15 22:06     標題: 【討論】多條件查找(函數法)

如下圖, 第12列依“地區”和“部門”查找資料。

有哪些方法?

C12 = excel 函數

[attach]15249[/attach]
作者: sunnyso    時間: 2013-6-15 22:10

本帖最後由 sunnyso 於 2013-6-15 22:15 編輯

回復 1# sunnyso

=SUMIFS(C2:C8,A2:A8,A12,B2:B8,B12)

=SUMPRODUCT((A2:A8=A12)*(B2:B8=B12)*C2:C8)

=LOOKUP(1, 0/(A2:A8=A12)*(B2:B8=B12),C2:C8)

{=SUM((A2:A8=A12)*(B2:B8=B12)*C2:C8)}

=LOOKUP(1,0/(A2:A8&B2:B8=A12&B12),C2:C8)
作者: sunnyso    時間: 2013-6-15 22:26

本帖最後由 sunnyso 於 2013-6-15 22:36 編輯

{=INDEX(C2:C8,MATCH(A12&B12,A2:A8&B2:B8,0))}

=LOOKUP(1, 1/(((A2:A8=A12)+(B2:B8=B12))=2),C2:C8)

{=SUM(IF(A2:A8=A12,IF(B2:B8=B12,1,0),0)*C2:C8)}
作者: sunnyso    時間: 2013-6-15 22:46

本帖最後由 sunnyso 於 2013-6-15 22:48 編輯

{=VLOOKUP(A12&B12,CHOOSE({1,2}, A2:A8&B2:B8, C2:C8),2,0)}

{=OFFSET(C1,MATCH(A12&B12,A2:A8&B2:B8, 0),)}

{=MAX((A2:A8=A12)*(B2:B8=B12)*C2:C8)}
作者: sunnyso    時間: 2013-6-15 23:02

再來一個
{=LARGE((A2:A8=A12 )*(B2:B8=B12) *C2:C8,1)}
作者: sunnyso    時間: 2013-6-15 23:05

=LOOKUP(A12&B12,A2:A8&B2:B8,C2:C8)
這個公式對本例結果爲 #NA, 假如把A、B欄用英文代替可以得到答案。請哪位大大幫忙分析一下
謝謝
作者: ANGELA    時間: 2013-6-16 09:45

回復 6# sunnyso


    LOOKUP()必須排序
作者: ML089    時間: 2013-6-16 14:56

回復 6# sunnyso
> =LOOKUP(A12&B12,A2:A8&B2:B8,C2:C8)
> 這個公式對本例結果爲 #NA, 假如把A、B欄用英文代替可以得到答案。請哪> 位大大幫忙分析一下
>謝謝

參數2需要排序,並不是英文可以(可能剛好有排序)中文不行。

LOOKUP 查詢的標準式就是你2樓的式子。
=LOOKUP(1,0/(A2:A8&B2:B8=A12&B12),C2:C8)

此式利用LOOKUP函數有排除錯誤的特性,將不符合條件以 0/FLASE = #DIV/0! 型式出現,LOOKUP在查詢中自動忽略。
符合條件以 0/TRUE = 0 型式出現,LOOKUP以1 查詢時會找到最後一個0的位置,回傳所對應第3參數的值。
若只有一個符合條件的資料或符合資料中只要隨意一個時,第1參數可以省略(查詢值就是0)。
作者: sunnyso    時間: 2013-6-16 19:07

回復 8# ML089

感謝說明
作者: sunnyso    時間: 2013-6-16 19:09

Database formula

=DSUM(A1:C8,3,A11:B12)




歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)