简单的VBA从First .Find值中选择一个范围?

时间:2017-07-06 14:17:36

标签: excel vba excel-vba

我想在列中找到一个值" A"然后从该地址中选择遇到的第一个空行。这就是我所拥有的,但Set f不起作用。我的Set c工作并返回$ A $ 32,这是正确的地址。我错过了什么?

With Workbooks("MyBook").Sheets("Mysheet")
    Set c = .Range("$A:$A").Find("Red Car").Offset(2, 0)
    Set f = .Range(c.Address & Range("A").End(xlDown).Row)
End With

2 个答案:

答案 0 :(得分:2)

试试这个,先检查是否找到了搜索字词

With Workbooks("MyBook").Sheets("Mysheet")
    Set c = .Range("$A:$A").Find("Red Car")
    If Not c Is Nothing Then Set f = Range(c.Offset(2, 0), c.Offset(2, 0).End(xlDown))
End With

答案 1 :(得分:1)

Removed Code

您只是想分配Range($A$32 & LastRow)。如果不添加:(冒号)和列字母(A),则无法正确地将范围指定给F.尝试此代码并查看它是否现在有效。