請問有數筆不同值的考試分數!如何設定函數找出最接近50分的人名呢!
- 帖子
- 1567
- 主題
- 40
- 精華
- 0
- 積分
- 1591
- 點名
- 0
- 作業系統
- Windows 7
- 軟體版本
- Excel 2010 & 2016
- 閱讀權限
- 100
- 性別
- 男
- 來自
- 台灣
- 註冊時間
- 2020-7-15
- 最後登錄
- 2026-2-2
|
謝謝論壇,謝謝各位前輩
後學藉此帖練習VBA陣列與字典,學習方案如下,請各位前輩指教
執行結果:
Option Explicit
Sub TEST()
Dim Brr, Y, i&, b#
'↑宣告變數
Set Y = CreateObject("Scripting.Dictionary")
'↑令Y變數是 字典
Brr = Range([B1], Cells(Rows.Count, 1).End(3))
'↑令Brr變數是 二維陣列,以儲存格值帶入
For i = 1 To UBound(Brr)
'↑設順迴圈!
b = Abs(50 - Brr(i, 2))
'↑令b變數是 50減 Brr第2欄陣列值後,Abs()轉為正值
Y(b) = Trim(Y(b) & " " & Brr(i, 1) & "(" & Brr(i, 2) & ")")
'↑令以b變數當key,item是自身連接Brr陣列第1.2欄陣列值
Next
MsgBox Y(Application.Min(Y.KEYS))
'↑令跳出提示窗 顯示: 以Y字典裡最小的key值回傳的item值
Set Y = Nothing: Erase Brr
'↑令釋放變數
End Sub |
|
|
用行動裝置瀏覽論壇學習很方便,謝謝論壇經營團隊
請大家一起上論壇來交流
|
|
|
|
|