范围查找日期列

1 excel vba

下面的过程有时会给出错误的输出。有人可以修改它,以便当要搜索的日期不可用时,它应该将日期增加 1 并再次搜索,直到找到可用日期。

示例:如果我搜索“1/1/2012”,如果它不可用,那么它应该将日期增加到“2/1/2012”并处理搜索,直到找到匹配值并返回范围地址(如果找到)。

注意:范围格式“M/d/yyyy”

Sub test()

Dim rng As Range
Set rng = Sheet1.Range("A:A").Find("1/1/2012")

Debug.Print rng.Address
'output $A$3288
'"1/1/2012" is not available.
End Sub
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

Kaz*_*wor 5

从评论中复制以匹配已解决的问题...

...尝试添加.Find方法的其他参数:

Set rng = Sheet1.Range("A:A").Find("1/1/2012", LookIn:=xlValues, LookAt:=xlWhole)
Run Code Online (Sandbox Code Playgroud)