返回列表 上一主題 發帖

[發問] EXCEL 求第二大或第三大數值

[發問] EXCEL 求第二大或第三大數值

請問各位,函數中有直接求最大數值與最小數值的函數,但不知道如何可以求得第二或第三等依此類推數值
不知有沒有大大會不會寫???

程式碼與附件如下
  1. Function MaxRank(表 As Range, 序列 As Integer) As Double
  2. Dim ar() As Double
  3. Dim 最高() As Double
  4. Dim 未選() As Boolean
  5. For Each rg In 表
  6.   A = A + 1
  7. Next
  8. ReDim ar(A): ReDim 最高(A): ReDim 未選(A)
  9. For Each rg In 表
  10.   n = n + 1
  11.   ar(n) = rg
  12. Next
  13. For i = 1 To A
  14. 最高(i) = -1.7976E+308
  15. 未選(i) = True
  16. Next i
  17. For i = 1 To A:  For j = 1 To A
  18.     If ar(j) > 最高(i) And 未選(j) Then
  19.       最高(i) = ar(j)
  20.       B = j
  21.     End If
  22.   Next j
  23.   未選(B) = False
  24. Next i
  25. MaxRank = 最高(序列)
  26. End Function
複製代碼

序列函數.rar (12.95 KB)

TOP

謝謝大大,測試看看!!!

TOP

回復 1# lichang


    用large 跟small就行了不是嗎?

TOP

回復 4# owen06
感謝owen06大,超級好用的
年齡不小,但我很想學

TOP

回復 4# owen06


    早知道有 Large 跟 Small  我就不現醜了.............:Q

TOP

回復 6# n7822123


    沒什麼醜不醜的,你能用vba寫出這麼棒的概念,就是一件很厲害的事了。
    討論區就是要大家一起腦力激盪,不是嗎?

TOP

謝謝各位大大的指導,只要能解決,大家都是神人
也可以讓小弟我更接近大家的思維

TOP

        靜思自在 : 人的心地是一畦田,土地沒有播下好種子,也長不出好的果實。 -
返回列表 上一主題