我试图弄清楚如何使用VBA在Excel版本2003,2007,2010中执行以下操作(希望它们对所有这些都是相同的): 在A列中搜索最后一个单元格,其中包含一个常量值。 从A2:I2中选择所有数据到上面搜索中包含最后一个常量数据值的行。
例如,如果A列中具有常量数据的最后一行是A13,那么我想选择A2:I2到A13:I13。
答案 0 :(得分:0)
<强> 修改 强>
现在'lastRow'将找到A列中最后一个使用过的单元格,即使上面有空白。这假设方程式在您的评论建议的其他列中。
Sub SelectRange()
lastRow = Cells(Rows.Count, "A").End(xlUp).Row
Range("A2:I" & lastRow).Select
End Sub
有关如何在不同版本的Excel中查找最后一个单元格,请参阅此post。
假设您必须评估A列中的单元格以获取公式与常量,您可以使用HasFormula方法,如下所示:
Sub SelectRange()
lastRow = Cells(Rows.Count, "A").End(xlUp).Row
Do While Range("A" & lastRow).HasFormula <> False
lastRow = Cells(lastRow - 1, "A").End(xlUp).Row
Loop
Range("A2:I" & lastRow).Select
End Sub