要用vba实现,A1:A10=1-10, 在A1:A10中,找出第二大的数字,并返回行号.

 我来答
coolbi5
2015-02-08 · TA获得超过1万个赞
知道大有可为答主
回答量:1.1万
采纳率:35%
帮助的人:2446万
展开全部

Option Explicit
Sub test()
    Dim x As Variant
    Dim t As Variant
    x = Application.WorksheetFunction.Large(ActiveSheet.Range("a1:a10"), 2)
    t = Application.WorksheetFunction.Match(x, ActiveSheet.Range("a1:a10"), 0)
    MsgBox t
End Sub
百度网友b974316
推荐于2016-03-20
知道答主
回答量:2
采纳率:0%
帮助的人:2.3万
展开全部
Option Explicit
Sub large2()
    Dim arr As Variant, brr As Variant, tmp As Variant
    Dim i As Integer, j As Integer
    arr = Application.Transpose(ActiveSheet.[a1:a10])
    brr = arr
    For i = 1 To UBound(brr) - 1
        For j = i + 1 To UBound(brr)
            If brr(i) < brr(j) Then
                tmp = brr(i)
                brr(i) = brr(j)
                brr(j) = tmp
            End If
        Next j
    Next i
    For i = 1 To UBound(arr)
        If arr(i) = brr(2) Then
            MsgBox i
            Exit Sub
        End If
    Next i
End Sub
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式