所以我想做以下事情,
我有两张纸,“Sheet1”包含一个维护类型作为搜索词(sMaintenance1) ,“Sheet2”包含略有变化的相似术语。
我想使用 FuzzyFind在"Sheet2"的给定范围(rMaintenance2)中搜索维护类型(sMaintenance1) 。
必须选择此范围。在“Sheet2”的第 1 行中,我得到了包含不同年份的合并单元格,在第 6 行中,我得到了维护类型。每年都有每种维护类型,因此如下所示:
我现在想在第 6 行从搜索年份的第一列到今年最后一列定义一个范围(rMaintenance2) 。
这是我到目前为止得到的:
Set rYear = Sheets(Sheet2).Range("1:1").Find(iYear, searchorder:=xlByColumns, lookat:=xlPart)
If rYear Is Nothing Then GoTo YearNV
iColumns = rYear.MergeArea.Count
Set rMaintenance2 = Sheets("Sheet2").Range(Cells(6, rYear.Column), Cells(6, rYear.Column + iColumns - 1))
sHit = FuzzyFind(sMaintenance1, rMaintenance2)
现在我收到此错误消息“应用程序定义或对象定义错误”,用于我对rMaintenance2的定义
我尝试了另一种方法:
With Worksheet("Sheet2")
Set rMaintenance2 = .Range(.Cells(6,rYear.Column), .Cells(6, rYear.Column+iColumn-1))
End With
但是,每当我使用Range.Find 函数时,我的代码中都会出现错误消息。
我只获得了 VBA 的基本知识,而且我才刚刚开始更深入地了解它(与工作相关),所以我很确定我对Object "Range"的理解有问题。
有人可以帮助我吗?