应用场景
一键定位数据区域的最大值或最小值
知识要点
1:WorksheetFunction.Max 最大值函数
Sub 定位最大值() '如果有多个最大值,全部选择
Dim maxvalue, rngtemp As Range, Firstaddress As String, findcell As Range
With ActiveSheet.UsedRange
'如果当前表已用区域数值个数大于0
If WorksheetFunction.Count(.Value) > 0 Then
maxvalue = WorksheetFunction.Max(.Value) '计算最大值
Set rngtemp = Cells.Find(what:=maxvalue, LookIn:=xlValues, lookat:=xlWhole) '查找最大值
If Not rngtemp Is Nothing Then '如果找到目标值
Firstaddress = rngtemp.Address '记录第一个目标的地址
Do '只要找到的单元格的地址不等于刚才记录的地址就一直循环下去
'如果变量findcell未初始化则将查找结果赋值给它,否则合并变量与查找到的单元格
If findcell Is Nothing Then Set findcell = rngtemp Else Set findcell = Union(findcell, rngtemp)
Set rngtemp = Cells.FindNext(rngtemp) '查找下一个
Loop While rngtemp.Address <> Firstaddress
End If
findcell.Select '选择查找到的单元格
End If
End With
End Sub
联系客服