查找date是否存在于单元格范围(Excel VBA)

我有一个单元格F2包含一个date,并被格式化为自定义date字段只显示日​​期和月份。

然后我有一个单元格范围C3;C60也包含date,并格式化为欧洲date字段显示dd/mm/yyyy

我正在编写一个VBA,检查这些字段,但它不工作。 在下面的示例中,variablesc可以是F5F20之间的任何单元格。

我得到RuntimeError 91.

 If Worksheets(1).Range("C3", "C60").Find(Worksheets(1).Cells(2, c.Column).Value) = True Then c.Value = "Whatever" Else 

.Find()返回一个范围,你的if语句正在检查它是否为TRUE 。 那将会失败。

 Dim rng as Range Set rng = Worksheets(1).Range("C3:C60").Find(Worksheets(1).Cells(2, c.Column).Value) if not rng is Nothing then c.Value = "Whatever" Else 

注意列入加里的答案

替代:

 Range("C3:C60") 

对于

 Range("C3", "C60") 

可能还有其他问题。