|
本帖最后由 micch 于 2019-4-22 09:41 编辑
很不幸的说,我理解错了,函数不是这么写的。
换代码测试了一下不对。做个自定义函数,修正一下
- Function f(x, n)
- Set d = CreateObject("scripting.dictionary")
- ar = x
- For i% = 1 To UBound(ar)
- For k% = 1 To UBound(ar, 2)
- d(i & ar(i, k)) = 0
- If Not d.exists(i & ar(i, k)) = 1 Then d("@" & ar(i, k)) = d("@" & ar(i, k)) + 1
- Next k, i
- k = Application.WorksheetFunction.Max(d.items)
- For Each x In d.keys
- If d(x) = k Then st = st & x
- Next
- If n > UBound(Split(st, "@")) Then f = "" Else f = Split(st, "@")(n)
- d.RemoveAll
- End Function
复制代码
公式: =f(b$3:h$33,row(a1)) 下拉。
|
|