EXCEL函数,当B列第二个最大值时,求对应A列的值,请高手指教

a b c
10:03 3.53 10
10:04 3.52 2
10:05 3.51 50
10:06 3.51 28
10:07 3.5 13
10:08 6 20
10:09 6 30
10:10 6 16
10:11 3.5 32
10:12 6 35
10:14 3.48 105
这里
当B列第二个最大值时,对应A列的值是10:12

类似求这样的第二个最大值(同一时间内发生的只计算一次)时,可能需要用宏才能实现。
Sub tty()
Dim i, maxvalue, maxflag As Integer
maxvalue = Application.WorksheetFunction.max(Range("B:B"))
maxflag = 0
i = 1
Do While Cells(i, 2) <> ""
If Cells(i, 2) = maxvalue And Cells(i, 2) <> Cells(i + 1, 2) Then
maxflag = maxflag + 1
If maxflag = 2 Then GoTo kkk
End If
i = i + 1
Loop
kkk: kkk: Range("D1") = Cells(i, 1)
End Sub
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-02-07
我回答过你的另一个问题(数据一样),将期中的C列的范围改成指定位置的某个A列单元格就可以了,
第2个回答  2009-02-08
=index(a:a,match(large(b:b,2),b:b,))
第二大值有多个以哪个为准?
相似回答