需要select非空白列中的最后一个单元格来计算该部分中有多less个数据单元

我需要一段代码在一个项目中为我工作。 不工作的子句是为了设置一个范围variables,其中第一个单元格是匹配单元格的行/列号,范围结束单元格是相应列中的最后一个非空白单元格。 我正在处理数据的每一部分之间的空白行数不同的每个部分之间的空白,在同一张纸上的所有部分每个空白行分隔,所以我需要的东西,不断计算每个部分有多less单元格为每个匹配的情况。 给我一个错误的代码是:

countRes = Range(.Cells(checkRow, matchCol), .Cells(checkRow, matchCol).End(xlDown).Select) resRow = countRes.Rows.Count 

我不断收到一个错误, 对象variables尚未设置或块variables未设置

任何人都知道可能是错的?

我知道它与第一行有关,但我似乎无法弄清楚什么是错的。

您需要Set一个Range对象,并从后面的单元格区域引用中删除.Select 。 通常情况下,最好从最底层向上查找最后一个已填充的单元格,而不是从上到下。 如果有临时的空白单元格,则会停在空白处而不是find真正的最后一个单元格

解决父工作表也是一个好主意。

 dim countRes as range, resRow as long with worksheets("Sheet1") '<~ set this properly! SET countRes = .Range(.Cells(checkRow, matchCol), .Cells(Rows.Count, matchCol).End(xlUP)) resRow = countRes.Rows.Count end with