我已经过滤了我的数据(" [h]:mm:ss; @")以给出0到15分钟之间的时间,然后产生此范围内的最小值。如果0到15分钟之间没有值,我希望它产生一个空白并继续循环。但是,如果筛选列表中没有值,则会生成类型不匹配错误。我试图处理错误无济于事。我做错了什么?
Columns("G:G").Select
Selection.AutoFilter
ActiveSheet.Range("$G:$G").AutoFilter Field:=1, Criteria1:=">0:00:00", _
Operator:=xlAnd, Criteria2:="<0:15:00"
MinValue = Application.Min(searchRange.SpecialCells(xlCellTypeVisible))
MinRow = Application.Match(MinValue, searchRange, 0)
On Error GoTo ContinueProcess:
Cells(j, 8).Value = MinRow
Cells(j, 9).Value = Cells(MinRow, 3)
Cells(j, 10).Value = Cells(MinRow, 4)
Cells(j, 11).Value = Cells(MinRow, 6)
ContinueProcess:
Resume Next
ActiveSheet.Range("$G:$G").AutoFilter Field:=1
Next j
答案 0 :(得分:0)
使用Application.SubTotal
而不是Min
, 5 或 15 功能参数将为您提供过滤后的数据没有错误。当没有要检查的数字时,这将导致零,并且很容易通过数字格式或IF
检查将其更改为空白。有关功能参数选项的更多信息,请参阅SUBTOTAL function。