0
当我尝试搜索特定列中的值时,VBA查找方法似乎失败。 此代码Excel VBA查找特定列的方法
Sub TargetR()
Dim CLL As Range
Dim TargetRange As Worksheet
Dim R As Range
Set CLL = ThisWorkbook.Worksheets(1).Range("J29")
Set TargetRange = ThisWorkbook.Worksheets(1)
Set R = TargetRange.Cells.Find(CLL.Value)
If Not (R Is Nothing) Then
Debug.Print R.Address
Else: Debug.Print "Empty"
End If
End Sub
完美地工作。 虽然通过用关键字报头中的列的限制搜索失败:
Sub Target()
Dim CLL As Range
Dim TargetRange As Worksheet
Dim targetColumn As Range
Dim sColumn As Range
Dim R As Range
Set CLL = ThisWorkbook.Worksheets(1).Range("J29")
Set TargetRange = ThisWorkbook.Worksheets(1)
Set sColumn = TargetRange.Cells.Find("This Column")
Set targetColumn = sColumn.EntireColumn
Set R = targetColumn.Cells.Find(CLL.Value)
If Not (R Is Nothing) Then
Debug.Print R.Address
Else: Debug.Print "Empty"
End If
End Sub
通过xlByColunm指定搜索方向没有帮助
是什么'设置sColumn = TargetRange.Cells.Find(“这列”)'给你?你还需要检查'sColumn'是否分配给'targetColumn'之前什么都没有。 –
我刚刚测试了代码。这个对我有用。 BTW'.Find'保留最后的设置。确保您设置所有参数。例如,'LookIn:= xlFormulas,_ LookAt:= xlPart,SearchOrder:= xlByRows,SearchDirection:= xlNext,_ MatchCase:= False,SearchFormat:= False' –