excel一串数值如6,6,4,4,2,3,3,8,5,7,6,4在同一个单元格,如何找出第N大值所在的位置

2025-03-23 09:34:38
推荐回答(2个)
回答1:

使用代码来完成,如下图的动画。





下面为代码


Sub cha()

Dim rng As Range

Dim arr

Dim strs$

Dim nums, num As Byte

Set d = CreateObject("scripting.dictionary")

    For Each rng In Selection

        arr = Split(rng, ",")

            For Each ar In arr

                strs = strs & ar

                d(ar) = ""

           Next ar

  For Each sr In d.keys

       num = InStr(strs, sr)

       nums = nums & num & ","

  Next sr

       d.RemoveAll

        rng(1, 2) = Left(nums, Len(nums) - 1)

        nums = ""

        arr = ""

        strs = ""

    Next rng

End Sub

回答2:

vba可以实现,没有任何问题