这是我自己学习写的一个宏,查找单元格F1部分匹配时的最后一个数据,在G1显示该数据距离B列最后一行的位置。 现在的问题出在:Range("A1:C" & R)这里 这里可以指定范围,写为:Range("A1:C" & R),Range("A:C")都不会出错 可是如果不是以A列开头查找,改句就显示为黄色,提示:运行是错误'13' 类型不匹配 如写为:Range("B1:C" & R),Range("B:C"),Range("C1:C" & R)等都出错。 注明:实际要查找的数据只在C列,且只有C列符合。 请老师指教。感谢了。 Sub Macro1() Dim rng As Range, R& R = [B65536].End(3).Row [G1] = "" Set rng = Range("A1:C" & R).Find(What:=Range("F" & 1), After:=Cells(1), LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False) If Not rng Is Nothing Then Range("F" & 1).Offset(, 1) = R - rng.Row End Sub
将蓝色的删除再试一下看看 Sub Macro1() Dim rng As Range, R& R = [B65536].End(3).Row [G1] = "" Set rng = Range("A1:C" & R).Find(What:=Range("F" & 1),
After:=Cells(1), LookIn:=xlValues, LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False) If Not rng Is Nothing Then Range("F" & 1).Offset(, 1) = R - rng.Row End Sub
|