Excel 問題 (有圖)(20分)

2007-11-28 4:29 am
看圖比較清楚一點
http://i71.photobucket.com/albums/i133/plastic_06/exc.jpg

問題在"最高殺敵數"中第四跟第五位
用 LARGE 找到兩個相同的殺敵數 19
而 死亡數,勝率,日期 我是用 HLOOKUP 做的
可是它兩次都找了最先發現的 19
而忽略了 K2 的 19
請問可以怎樣解決?

我想先比較殺敵(大至小)
殺敵相同就比較死亡(小至大)
就跟足球的得失球一樣
望高人賜教!!
更新1:

弱弱問一下.. 日期有方法比較前後嗎?

回答 (2)

2007-11-28 11:08 pm
✔ 最佳答案
ok... HLOOKUP 同 VLOOKUP 等等, 都只係會 return 最先找到的值, 即係你個 list 上面既第一個, 係無得變的. 所以你既情況我地用唔到 HLOOKUP.

我估你的 col R 應該係用 LARGE 做既, right?? [ =LARGE($E$2:$N$2,1) ] 咁我地做 col S 既時候, 我地都可以用多次 LARGE, 不過今次我地用 ARRAY FUNCTION. (老實講 ARRAY FUNCTION 係十分容易令人混淆的, 所以係有少少難度既, 仲有, 輸入完左一條 ARRAY FUNCTION 按 ENTER 係會出 ERROR 既, 一定一定要按 Ctrl-Shift-Enter 至得既)

首先講最簡單既, S4 那一個儲存格 的 function:
=LARGE(IF($E$2:$N$2=R4,$E$3:$N$3,0),1)
[ 記得入完係按 Ctrl-Shift-Enter ]

我地首先重溫一次 Large, Large(array, n) 第一個參數係一個 array, 第二個參數係要佢 return 排第幾位既 element 出黎. 上面既的 large 的第二個參數很簡單, 係 1, 即係搵最大果個, 而前面個 array 就係重點了, IF ( $E$2:$N$2=R4 , $E$3:$N$3 , 0 ), if function 係

if (logical_test, value if true, value if false)

上面既 array 既意思就係, 在 E2 到 N2 裡面, 如果 等於 R4 果一格, 就 return E3 到 N3, 如果唔係就 return 0. 咁佢會 return 咩比你呢?? { 0, 0 , 0 , 0 , 0 , 6, 0, 0 , 0, 0 }, 因為 R4 係 33, 所以只有 33 果一行至會比個 6 你, 其他都唔會有, 而就算有其他 33, 因為我地而家係第一個, 永遠只要最大既, 所以我地加多條 Large function, 確保佢只係 return 最大果一個
上面既結果就係佢會 return 6 比你.

然後講第二個, S5, 這就有點複雜了
=IF(R5=R4, LARGE(IF($E$2:$N$2=R5,$E$3:$N$3,0),2),LARGE(IF($E$2:$N$2=R5,$E$3:$N$3,0),1))
[ 記得入完係按 Ctrl-Shift-Enter ]

首先要 check 下 而家這一行 (R5), 係唔係同上一行(R4)一樣, 如果係一樣, 我地既 Large function 就唔係要第一個, 而係要排第二果個, 所以我地就加多個 if function 係最外面.

然後, s6 到 s13 都係照樣做, col T 同 col U, 就要改埋個 array IF 裡面既 value if true 的 row #.

最後的重點, 係上面幫你寫的 function 有兩個限制:
1. 我假設左你既[死亡]既 最少值 係 0, 所以個 array IF 先至會唔等於 R 就 return 0;
2. 我針對你的情況,[殺敵]只係有兩個同分, 所以我後尾加既 IF 先至只係 check 對上一行同唔同, 如果有三個同分, 就要check 埋再上一行了.

2007-12-02 22:19:46 補充:
日期當然都可以比較啦....假設: (我個 excel default 日期係 dd/mm/yyyy)A1: 1/4/2007A2: 30/4/2007如果=A2-A1, 就會出 29, 因為差29日=if(A2>A1, " true ", " false "), 佢就會出 true
2007-11-28 10:53 pm
仲咩俾張相唔俾個excel啊. 你無俾個excel, 我又唔想打...

in such case, you have to make up a search index yourself.
say, E1=E2*100-E3
睇下妳個死亡同殺敵會唔有range, 跟據個range修改一下條formula啦.
(I assumed 殺敵>1 and 死亡<100 here)

跟住用row1的search index做你原本row2做既野, 應該得.
參考: excel mania


收錄日期: 2021-05-03 03:52:35
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20071127000051KK03306

檢視 Wayback Machine 備份