当 find 结果为 空 时,也就是没有找到所要查找的内容时,你这句就会报错“对象变量或 With 块变量没有设置(错误 91)”
使用find时,一般要加个结果判断的过程,如:
Option Explicit
Private Sub CommandButton1_Click()
Dim BranchName As Range, TargetRow As Long
Dim iFind As Range, i
i = 1
Set BranchName = Worksheets(1).Range("A3:A34")
Set iFind = BranchName.Find(Worksheets(2).Cells(i, 1).Value)
If Not iFind Is Nothing Then TargetRow = iFind.Row
End Sub
原因是没有给BranchName对象指定引用区域。这个就没问题。
Dim BranchName As Range
Dim TargetRow As Long
Set BranchName = Range("a3:a34")
TargetRow = BranchName.Find(Worksheets(2).Cells(1, 1).Value).Row
Dim BranchName As Range
Dim TargetRow As Long
Set BranchName = Range("a3:a34")
TargetRow = BranchName.Find(Worksheets(2).Cells(1, 1).Value).Row