作者JieJuen (David)
看板Office
標題Re: [問題] excel有類似查表的功能嗎?
時間Sat Aug 30 16:16:28 2008
單純就此表而言,特例公式
=MIN(MAX(0,20*(次數-4+MATCH(年齡,{16,21,26}))),100)
好處:
1. 年齡可超過30歲 無上限
2. 次數少於0分之次數,傳回0分
3. 次數大於100分之次數,傳回100分
缺點:
1. 年齡不可小於16歲
2. 只能用於此表,不具普適性
若用查表方式
A B C D E F G H
1 16 21 26 年齡 次數 成績
2 100 8 7 6 25 8 100
3 80 7 6 5 16 8 100
4 60 6 5 4 18 5 40
5 40 5 4 3 27 4 60
6 20 4 3 2
7 0 3 2 1
=INDEX(成績表,MATCH(次數,OFFSET(成績表,,MATCH(年齡,年齡表)),0))
H2格之定義名稱
年齡 =單槓!F2
年齡表 =單槓!$B$1:$D$1
成績表 =單槓!$A$2:$A$7
次數 =單槓!G2
好處:
1. 年齡可超過30歲 無上限
2. 可套用至不同項目
3. 擴充容易 更改容易
缺點:
1. 年齡不可小於16歲
2. 表格需完整,例如次數0及次數50之分數可能都要包含,
否則有該次數時查不出來
http://i.am.ntu.googlepages.com/MatchOffset.xls
※ 引述《verdant (死腦筋男孩)》之銘言:
: 您所使用的軟體為:excel
: 版本:2003
: 問題:
: 小弟目前在軍中服役中
: 連上的訓練常常為了要算體能成績而感到困擾
: 成績的算法依年齡而有所不同
: 主要是用查表的方式來算
: 成績對照表大概像這個樣子
: 單槓次數
: 年 齡
: 16~20 21~25 26~30
: 成 100 8 7 6
: 80 7 6 5
: 績
: 60 6 5 4
: 40 5 4 3
: 20 4 3 2
: 0 3 2 1
: 我想要在某個儲存格輸入年齡
: 另一個儲存格輸入單槓次數
: 就能夠得出最左邊的成績這樣
: 請問這樣的函式應該要怎麼寫呢?
: 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 114.47.35.147
→ JieJuen:排序後,更改公式,容許次數沒有上限,見附檔。 08/30 16:59
推 verdant:謝謝你 不過樓上那位大哥的式子比較具一般性 08/30 23:04
→ JieJuen:呵 感謝您的回應~我很希望知道是哪一方面較不適用,能否多 08/30 23:41
→ JieJuen:描述一點現實的情況,區別出二篇文章的適用範圍?我喜歡多 08/30 23:42
→ JieJuen:知道一點之前想不到的狀況,感謝您^^ 08/30 23:43
→ verdant:因為成績不一定是等差 也就是說有可能 0 15 30 60等等 08/31 00:10
→ JieJuen:喔~ 那法二的查表方式是否可用? 08/31 00:12
→ verdant:例如說打靶 1發可能是30分 但是3發卻變成60分了 08/31 00:12
→ JieJuen:嗯 法一我也提到不具普適性,的確~ 08/31 00:12
→ verdant:這位大哥抱歉 ^^" 沒看清楚方法二 08/31 00:14
→ verdant:的確也是OK的 抱歉剛剛趕著試做所以忽略了 <(_ _)> 08/31 00:15
→ verdant:實在很不好意思 08/31 00:15
→ JieJuen:呵呵 沒關係^^" 我也在猜法二我沒有標示的很清楚 容易漏掉 08/31 00:15
→ JieJuen:這樣也提醒寫的人把一般性的放前面較好^^ 08/31 00:16