我有64名學生根據他們的GPA分配給19個不同的學生。學生們也表示了他們對溪流的偏好。只有5名學生可以分配前三名(A-C),4名學生可以分配到D組,其餘15名學生各得3名學生。我已經將數據添加到Excel表格中,但不知道如何處理以獲得上述結果。 The data is organized like this。我很高興分享原始文件,但無法找到上傳的方式。Excel:根據GPA和選擇偏好將學生分配給學生
0
A
回答
0
這可以在一個vba宏中自動解決,但稍微快一點的版本會使用公式來快速和骯髒。它開始像你已經,按gpa排名。
爲每個學生插入2行。在這一行中,您將計算流的「填充」。如果你有一個bazillion學生,你應該寫一個小宏來複制粘貼,這樣你就可以得到其他所有的行。令人遺憾的是,excel不接受將空值粘貼爲不變值。
要麼通過搜索/替換來更改排名,要麼創建一個新表,其中「所需的分配」值對於最熱門的流爲「最高」。 小區C2應該是這樣的:
=20-'originalsheet'!C2
我們現在正在研究新的工作表
所以,你有這些行:(學生 - 分配 - 可用性 - 學生 - 分配 - 可用性)
在分配線中,您將填寫上面學生的分配情況,在可用性行中填寫當前可用空間。
第一個學生被分配給他或她的選擇。
分配行獲取調查當前單元格是否具有最低可能值的公式。所以。行2:第一個學生,ROW3:分配,ROW4:新的可用性,ROW5:學生願望,第6列:我們在小區C6使用這個公式
=if(sumproduct(max(($C5:$U5)*(($C4:$U4)>0)))=C6;1;0)
然後下一行,新的可用性簡直是
=C4-C6
向下複製粘貼公式。您可能會遇到與完全類似GPA的學生相關的問題,但您的排名從上到下是該計劃的優先考慮因素。我沒有原始文件,我沒有時間從圖像中構建它,但它看起來像是用於我的小測試設置。
稍微比手工做起來容易,但是再次;如果你有一個bazillion學生,並且經常進行這種分配 - 請在vba部分詢問。
摘要:
- 通過GPA排名
- 改變,因此最高願望是最高數字
- 插入2行對每個學生
- 計算手動第一個學生,應該不是難事......
- 使用公式並確保單元格引用不被篡改。
相關問題
- 1. 計算學生GPA,更新總學分和總學分
- 2. 查看學生數據,包括學生姓名,成績和學分,以便根據gpa,學分或姓名排列數據
- 3. java學生gpa文件和數組
- 4. 如何從學生班級關聯表中選擇給定學生的同學?
- 5. 按學生最近學期查詢ID#和GPA
- 6. C:爲學生計算GPA的程序
- 7. 學生項目分配(SPA)
- 8. 選擇在給定期間內未付款的學生(學期)
- 9. 讓學生與其他學生配對
- 10. 根據分數和校園分配學生組 - 分組爲ASP.NET,VB和SQL
- 11. 如何序列化(選擇學生)班級條件的學生
- 12. 根據foreach循環選擇學生記錄
- 13. 按百分比標準分配學生
- 14. 使用類和對象來計算學生的GPA
- 15. 部分關係學校學生
- 16. 選擇學生的總人數每班
- 17. 選擇類最大的學生
- 18. 我們如何更新學生選擇?
- 19. 返回學生信息 - SQL/C#分配
- 20. 學生 - 項目分配算法?
- 21. 如何根據學生的成績排列一系列學生記錄
- 22. 根據學校排名分配班級
- 23. 選擇不具有任何學生入學
- 24. SQL Server 2008中,選擇學生成績優異的學生,從每一類
- 25. 評分學生的考試
- 26. Amazon.com學生最終得分
- 27. 篩選學生尚未
- 28. 學生在學校查詢
- 29. AttributeError錯誤:類型的對象「學生」有沒有屬性「GPA」
- 30. Java:用12個學生的intArr計算平均GPA
請嘗試[this](http://www.sensefulsolutions.com/2010/2010/format-text-as-table.html)上傳數據數組以解決問題(也適用於解析回tab或逗號-delimited) –
如果這是一個關閉,我會按GPA排序並手工分配流。如果您正在爲挑戰做好準備,或者您需要使用大型數據集或許多數據集,希望其他人有時間提供實際的技術解決方案。 – Sammy
感謝您建議手動執行此操作,但在某些情況下,學生人數優先於某個特定的流,而不是可用的職位,因此需要考慮他們的第2,3甚至第7個優先級,這對於手動分配來說變得複雜。 – Rob