excel vba 求一列数中最大的5个数

求一列数中最大的5个数要用VBA不在公式... 求一列数中最大的5个数要用VBA不在公式 展开
 我来答
金融系统
2011-07-08 · 超过15用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:39.6万
展开全部
你试试吧,假定数据从第1行第1列开始,有个等于情况就没考虑了,你可以自己再想想
Sub Col_max()
Dim Rowmax As Long, i As Integer, j As Integer
Dim Arr() As Variant '声明数组
Dim C_Max(1 To 5) As Double
Rowmax = ActiveSheet.Range("a65536").End(xlUp).Row '求第一列最大行数
ReDim Arr(1 To Rowmax) '动态
For i = 1 To Rowmax '假定数据从第1行开始,循环给数组赋值
Arr(i) = Cells(i, 1).Value
Next
C_Max(1) = WorksheetFunction.Max(Arr) '使用工作表MAX函数求最大值
For j = 2 To 5
C_Max(j) = WorksheetFunction.Match(C_Max(j - 1), Range("a1:a" & Rowmax), 1) '使用MATCH函数逐个求值
Next
End Sub
更多追问追答
追问
这个只是返回最大那值!我要的是最大值中是5个数!如1,2,3,4,5,6,7,8,9要返回9,8,7,6,5,4
追答
刚没看清楚,重新修改了一下,等于的情况我也想想,结果有点不对,我再看看
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式