excel函數應用在循環賽排名? - 運動

Jack avatar
By Jack
at 2012-10-10T00:00

Table of Contents

以下為准大提供非常好用的4隊(6場)循環賽排名:http://www.funp.net/410065
那如果是3隊(3場)、5隊(10場)、6隊(15場)時,各要如何獨立修改程式?
Tags: 運動

All Comments

Emily avatar
By Emily
at 2012-10-13T23:15
<範例檔>:VBA Function 自訂函數.桌球賽排名
http://www.funp.net/714386
2012-10-11 17:55:38 補充:
EXCEL VBA.桌球比賽.以〔勝場+得失分+比數〕綜合計算〔排名〕
                         <.准提部林.>
---------------------------------
〔Function.自訂函數〕篇
■範例表格:
圖片參考:http://imgcld.yimg.com/8/n/AB07101627/o/1012101003...
 
■排名規則:
 1.首先以〔勝場數〕決定排名。
 2.若〔勝場數〕相同,則以〔同勝隊〕對決場的〔勝負〕排名。
 3.若再相同,則加入〔同勝隊〕對決場的〔得失分.比數〕排名,
   得失分率=得分/失分
   比數率=自隊比數/客隊比數
 
■排名參數表:
圖片參考:http://imgcld.yimg.com/8/n/AB07101627/o/1012101003...
 
■程式碼:因內容太多,僅列出主處理段,餘請參考範例檔
 For i = 1 To Xm
   勝場(i) = xBB(i)
   For j = 1 To Xm
     If j <> i And xBB(j) = xBB(i) Then
       同比勝負(i) = 同比勝負(i) + _
        Application.CountIf(xFF, xAA(i) & "/" & xAA(j)) * 0.1
       同勝隊名(i) = 同勝隊名(i) & xAA(j)
     End If
   Next j
 Next i
 
 For i = 1 To Xm
 For k = 1 To xCC.Rows.Count Step 2
   If xCC(k) = xAA(i) And InStr(同勝隊名(i), xCC(k + 1)) Then
     得分(i) = 得分(i) + xDD(k)
     失分(i) = 失分(i) + xDD(k + 1)
     自比數(i) = 自比數(i) + xEE(k)
     客比數(i) = 客比數(i) + xEE(k + 1)
   ElseIf xCC(k + 1) = xAA(i) And InStr(同勝隊名(i), xCC(k)) Then
     得分(i) = 得分(i) + xDD(k + 1)
     失分(i) = 失分(i) + xDD(k)
     自比數(i) = 自比數(i) + xEE(k + 1)
     客比數(i) = 客比數(i) + xEE(k)
   End If
 Next k
 Next i
 
 For i = 1 To Xm
   總評點(i) = (勝場(i) + 同比勝負(i)) * 10 ^ 9
   If 失分(i) > 0 Then _
     總評點(i) = 總評點(i) + Int(得分(i) / 失分(i) * 10 ^ 6)
   If 客比數(i) > 0 Then _
     總評點(i) = 總評點(i) + 自比數(i) / 客比數(i) / 100
 Next i
 排名 = 總評點()
 
■公式:
 B4:=INDEX(排名($B$1:$E$2,$B$8:$J$19),COLUMN(A1))
 B5:=RANK(B4,$B$4:$E$4)
---------------------------------
<範例檔>:
http://www.funp.net/714386
---------------------------------
2012-10-11 21:42:07 補充:
If 客比數(i) > 0 Then 總評點(i) = 總評點(i) + Int(自比數(i) / 客比數(i) * 10 ^ 5)
If 失分(i) > 0 Then 總評點(i) = 總評點(i) + 得分(i) / 失分(i) / 10
這兩行已將排名順序規則改為:
勝場>同勝比勝負>比數率>得失分率
請將原來的刪掉,再加入!
按鈕執行頁:
B7公式:=(B2+B4)*10^9+INT(B6*10^5)+B5/10
右拉
2012-10-11 21:45:11 補充:
另外,
自比數 / 客比數 > 5 / 0
得分 / 失分 > 16 / 0
因〔分母〕不可為0,程式中是排除未計,不知要如何計算?
2012-10-12 10:43:04 補充:
如果不會更改009修改的部份,
不用客氣提出,我再重整範例檔上傳!
2012-10-12 13:35:05 補充:
~~比數率又相同得失分率不同時,總評點卻顯示一樣數據
請將公式結果以〔貼上值〕方式貼到其它格,
看看〔小數點〕是否相同?
應該是不相同的!
2012-10-12 13:47:39 補充:
總評點:
1.勝場(2) + 比勝負勝者加(0.1) = 2.1 再乘10^9 = 2100000000
2.比數率:自比數/客比數 = 6/4 = 1.5 再乘10^5 = 150000
3.得失分率:得分/失分 = 31/19 = 1.6315789 再除10 = 0.16315789
三數相加 = 2100150000.16316
排名要訣:
勝場  勝負  比數率  得失分率(比小數)
2   100   150000   .16316
2012-10-12 13:52:19 補充:
若3隊〔勝場.勝負.比數率〕相同,
則〔整數〕部份會相同,須再以〔小數點〕比排名:
甲:2100125000.16316
乙:2100125000.10417
丙:2100125000.05806
2012-10-12 15:43:48 補充:
Sub 亂數重置數據2()
~~
~~
End Sub
另外複製在其下方貼上,
Sub 亂數重置數據2() 改 Sub 亂數重置數據3()
Sheets("6隊15場").Range("C8:G37")
只要改〔工作表名稱〕及〔Range範圍〕即可!
再以按鈕指定巨集!
2012-10-12 15:48:46 補充:
<範例檔2>排名規則:勝場 → 同勝比勝負 → 比數率 → 得失分率
http://www.funp.net/722503
---------------------------------
2012-10-12 18:18:55 補充:
~~按鈕指定巨集沒做過???
以右鍵指著按鈕,在快顯選單中應有〔指定巨集〕選項,
可先看看已使用中按鈕的指定巨集內容!
按鈕是從〔檢視〕〔工具列〕>〔表單〕中取得,
別的Office版本我不會教!
這部份可能要請自行看看Excel說明或上網找看看!
Edwina avatar
By Edwina
at 2012-10-11T22:47
排名規則:
1.首先以〔勝場數〕決定排名。
2.若2 隊〔勝場數〕相同,則以〔同勝隊〕對決場的〔勝負〕排名。
3.若3 隊〔勝場數〕相同,則以〔同勝隊假設乙.丙.丁〕相關對決場(乙 丙、丙丁、乙丁)3場的比數計算得失比排名。
4.若再相同,則加入〔同勝隊〕對決場的〔得失分比〕排名,
   得失分率=得分/失分
勝場-比數-得失分(3隊勝場相同的排名比較順序)
以上排名順序是正確的~准大的回答是:勝場-得失分-比數
Audriana avatar
By Audriana
at 2012-10-14T01:54
居然更好用~又更方便~
2012-10-11 18:52:09 補充:
准大:沒說清楚~發現一個問題~排名規則。
■排名規則:
 1.首先以〔勝場數〕決定排名。
 2.若2隊〔勝場數〕相同,則以〔同勝隊〕對決場的〔勝負〕排名。
3.若3隊〔勝場數〕相同,則以〔同勝隊假設乙.丙.丁〕相關對決場(乙 丙、丙丁、乙丁)3場的比數計算得失比排名。
 4.若再相同,則加入〔同勝隊〕對決場的〔得失分比〕排名,
   得失分率=得分/失分
   比數率=自隊比數/客隊比數
2012-10-11 19:21:56 補充:
准大:抱歉沒說清楚。
如回答範例:甲乙丙3隊〔勝場數〕相同,甲勝乙比數4:1、乙勝丙4:0、丙勝甲3:2;則甲得失比=4+2/1+3=1.5、乙得失比=1+4/4+0=1.25、丙得失比=0+3/4+2=0.5則甲第一、乙第二、丙第三。
2012-10-11 20:36:26 補充:
3 隊勝場相同,先以比數排名~若比數相同再以得失分排名~
2012-10-12 12:44:59 補充:
兩個問題請教准大:
(1)依009修改後,名次顯示皆ok。但如果3 隊同勝場,比數率又相同得失分率不同時,總評點卻顯示一樣數據(而名次有1、2、3名之分)。
(2)如5隊10場時,<亂數重置數據>要如何修改才能使用? 謝謝!
2012-10-12 14:29:19 補充:
(1)OK了~(儲存格格式設定錯誤)
(2)如5隊10場時,<亂數重置數據>要如何修改才能使用? 謝謝!
2012-10-12 17:21:08 補充:
按鈕指定巨集沒做過???

excel函數應用在循環賽排名?

Quintina avatar
By Quintina
at 2012-10-09T00:00
以下為准大提供非常好用的4隊循環賽(6場)排名:http://www.funp.net/410065
那如果是3隊(3場)、5隊(10場)、6隊(15場)時,各要如何修改程式?

太矮了都交不到女朋友

James avatar
By James
at 2012-10-09T00:00
太矮了都交不到女朋友
唉~矮青少年的煩惱有誰知~

長高or減肥

Mia avatar
By Mia
at 2012-10-09T00:00
我國二
升高152= =
還想繼續長
但是又好想減肥
又不能少吃不然會發育不良
該怎麼辦勒???
氣死偶勒ˋ____ˊ

都是因為家庭的關係讓我不開心!!!

Robert avatar
By Robert
at 2012-10-09T00:00
我常常會想起以前的不開心事情

重點在,那些都是很小的事情

但是也因為這些事情,讓我從國中就開始活的不快樂

也很容易�� ...

想打羽球,所以考慮治療肩膀傷,墾求建議及專人指教,感謝大家

Jacob avatar
By Jacob
at 2012-10-09T00:00
小弟一步步敘述事發經歷,為期應該有3~4年了,喜歡打羽球,所以目前打算想做進一步的治療。
起初,在一段羽球運動結束後,感覺右肩膀稍微緊繃( ...