统计使用vba的行数

我正在计算包​​含特定值的行数,有三行,我正在计算每个行的整体值并放入一个variables中,以便稍后在脚本中打印到屏幕上。 我只计算某个单元格范围内的行,这是代码的第一部分 – 要查找第一个和最后一个出现的位置,以便我可以将这些行用作行号

Dim mediumStartRow As Integer Dim mediumEndRow As Integer Dim majVarCount As Integer Dim minVarCount As Integer Dim onTrackCount As Integer 'Find the range of cells for Medium Projects, just gives the row number of the first occurnace and the last occurnace mediumStartRow = Range("H:H").Find(what:="Medium Project", after:=Range("H21")).Row mediumEndRow = Range("H:H").Find(what:="Medium Project", after:=Range("H21"), searchdirection:=xlPrevious).Row MsgBox "First and Last Row for Medium Projects: " & mediumStartRow & mediumEndRow majVarCount = 0 minVarCount = 0 onTrackCount = 0 With Range("AS:AU" & mediumStartRow) If Value = "Major Variance" Then majVarCount = Rows.Count Else If Value = "Minor Variance" Then minVarCount = Rows.Count Else If Value = "On Track" Then onTrackCount = Rows.Count End If End If End If Do Until Range("AS:AU" & mediumEndRow) Loop End With MsgBox "Major Project Count: " & majVarCount 

在它之上的代码,我到目前为止,但我似乎得到一个运行时错误 – 方法'范围'object'_Global失败 – 在行

 With Range("AS:AU" & mediumStartRow) 

任何线索如何解决

您需要在范围语句中定义第一个和最后一个行号。 即

 With Range("AS" & mediumStartRow & ":AU" & mediumEndRow)