VBA findNext nothing 問題

Function test(cel As Integer) As String
   Dim functionRetStr As String '方法返回值
   Dim currentValue As String '調用方法單元格第一列值
   Dim totalRow As Long '總行
   Dim rngTemp As Range '搜索
   Dim rngA As Range
   functionRetStr = ""
   totalRow = ActiveSheet.[A65536].End(xlUp).Row
   currentValue = Cells(Application.Caller.Row, 1).Value
   Set rngA = Range("A1:A" & totalRow)
   Set rngTemp = rngA.Find(what:=currentValue, LookAt:=xlWhole)
   If Not rngTemp Is Nothing Then
        
        firstAddress = rngTemp.Address
        If IsError(ActiveSheet.Cells(rngTemp.Row, cel)) = False Then
            functionRetStr = ActiveSheet.Cells(rngTemp.Row, cel).Value
        End If
        
        Do
            Set rngTemp = rngA.Find(what:=currentValue, LookAt:=xlWhole, after:=rngTemp)
            If IsError(ActiveSheet.Cells(rngTemp.Row, cel)) = False Then
                If Not functionRetStr Like "*" & ActiveSheet.Cells(rngTemp.Row, cel).Value & "*" Then
                   functionRetStr = functionRetStr & "," & ActiveSheet.Cells(rngTemp.Row, cel).Value
                End If
            End If
        Loop Until rngTemp Is Nothing Or rngTemp.Address = firstAddress
   End If
   Set rngTemp = Nothing
   test = functionRetStr
End Function

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章