在excel 中要如何設判斷式及計算式

2009-10-30 10:49 pm
請問前輩們在excel 中
要如何設判斷式及計算式

例如: 我的數據分別為 3 , 7 ,11
我要選擇兩個差異較低的數值做平均
兩個差異計算式為 l(A-B)*200/(A+B)l
3, 7 差異為 80%
7,11 差異為 44%

故 結果為 (7+11)/2 = 9

請問要如何設定判斷式及計算式
謝謝~~~
更新1:

謝謝~~Jacob Hsia 回答 但不是我想要的 我需要的是 A1 3 B1 7 C1 11 D1 電腦自行判斷較相近的值並計算,(設定判斷式及計算公式), E1 較相近的差異值(電腦自行判斷計算) 謝謝

更新2:

謝謝 farstar66 回答 請問 您的公式中 &lt 是什麼符號阿,會不會是網頁轉換的亂碼 請幫幫忙.. 謝謝~~

更新3:

請教想在 如果在多一組數據該要怎麼寫 例如 原本A1B1c1 又多D1 要如何寫 謝謝

回答 (3)

2009-10-31 1:04 am
✔ 最佳答案
D1公式為
"=MIN(ABS((A1-B1)*200/(A1+B1)),ABS((A1-C1)*200/(A1+C1)),ABS((B1-C1)*200/(B1+C1)))"

E1公式為
"=IF(AND((ABS((A1-B1)*200/(A1+B1))<ABS((A1-C1)*200/(A1+C1))),(ABS((A1-B1)*200/(A1+B1))<ABS((B1-C1)*200/(B1+C1)))),(A1+B1)/2,IF(AND((ABS((B1-C1)*200/(B1+C1))<ABS((A1-B1)*200/(A1+B1))),(ABS((B1-C1)*200/(B1+C1))<ABS((A1-C1)*200/(A1+C1)))),(B1+C1)/2,(A1+C1)/2))"

先提供我的做法供您參考,我只會用最笨的方法一個一個去比較,公式可能可以簡化或用其他公式代替,如有其他先進有更簡便的方法,您就採用他們的做法,希望我的做法對您有幫助。
參考: 自已
2009-10-31 6:58 am
陣列公式:
=AVERAGE(OFFSET(A1,,RIGHT(MIN(ROUND(ABS((A1:B1-B1:C1)*200/(A1:B1+B1:C1)),2)+COLUMN(A1:B1)%%),2)-1,,2))
Ctrl + Shift + Enter 三鍵輸入
2009-10-30 11:03 pm
你可以在A欄依序 (由小到大) 放資料的數值,例如A1放3,A2放7,A3放11...。然後在B2算A1與A2的差,公式為「=(A2-A1)*200/(A2+A1)」,因為是由小到大,所以就可以不用加 ABS 的函數,把B2的內容以填滿控點複製到B3以下的儲存格。在C2欄輸入公式「=(A1+A2)/2」,同樣把C2的內容以填滿控點複製到C3以下的儲存格。這樣就已經幾乎完成了。接下來,只要把B欄作排序,就可以找到差異最小的值,對應的C欄儲存格內容就是答案了。
參考: 自己


收錄日期: 2021-04-21 12:30:26
原文連結 [永久失效]:
https://hk.answers.yahoo.com/question/index?qid=20091030000015KK03592

檢視 Wayback Machine 備份