VBA:从列表中返回第二小的数字
使用: Excel 2010,VBA
目标:从列表中返回次数最less的数字(无论是带小数的整数还是实数)
示例数据集(我希望它返回10.123):
11
9
26.0
37.123
45
10.123
问题:我遇到了几个线程,解释了如何做到这一点,但似乎每件事都只涉及到整数。 我需要这个工作的整数和实数(例如,1和1.2345)的值列表。
我试过的(但我认为这只适用于整数):
For dblX = LBound(arrFwdTimes) To UBound(arrFwdTimes) - 1 For dblY = dblX + 1 To UBound(arrFwdTimes) If arrFwdTimes(dblX) > arrFwdTimes(dblY) Then strT = arrFwdTimes(dblY) arrFwdTimes(dblY) = arrFwdTimes(dblX) arrFwdTimes(dblX) = strT End If Next dblY Next dblX
你可以使用下面的来实现你想要的。 这与使用SMALL
公式函数相同
ans = WorksheetFunction.Small(YourRange,2)