COPYRIGHT BY dropit.liu.
Function 找重複值的位置(SHEET_NAME, Target, ADD_ROW, ADD_COLUMN, range_to_range As String)

'SHEET_NAME: 搜尋表單名
'TARGET: 找尋的目標值
'ADD_ROW: ROW增值
'ADD_COLUMN: COLUMN增值
'2018.5.18 增加當無重複時自動離開迴圈
    
    SHEET_NAME_A = SHEET_NAME
    
        合計_add = 0
        
        Set M_RNFIND = Sheets(SHEET_NAME_A).Range(range_to_range).Find(WHAT:=Target)
        
        
        If Not M_RNFIND Is Nothing Then
        
            m_stAddress = Sheets(SHEET_NAME_A).Cells(M_RNFIND.Row + ADD_ROW, M_RNFIND.Column + ADD_COLUMN).Address
        
          
            Do
                               
                Set M_RNFIND = Sheets(SHEET_NAME_A).Range(range_to_range).FindNext(M_RNFIND)
                
                
                
                If M_RNFIND Is Nothing Then
                    
                    Exit Do
                
                End If
                
                 If Target = Sheets(SHEET_NAME_A).Range(M_RNFIND.Address) Then
                
                    合計_add = 合計_add + 1
                
                End If
                
            Loop While Not M_RNFIND Is Nothing And M_RNFIND.Address <> m_stAddress
            

            
            ReDim 合計(合計_add)
            
            合計_add = 0
            
            'AGAIN
            m_stAddress = ""
            Set M_RNFIND = Sheets(SHEET_NAME_A).Range(range_to_range).Find(WHAT:=Target)
        
        
            If Not M_RNFIND Is Nothing Then
            
                'm_stAddress = m_rnFind.Address
        
                合計(合計_add) = M_RNFIND.Address
    
                'Unhide the column, and then find the next X.
                Do
                
                     If Target = Sheets(SHEET_NAME_A).Range(M_RNFIND.Address) Then
                     
                        合計(合計_add) = Sheets(SHEET_NAME_A).Cells(M_RNFIND.Row + ADD_ROW, M_RNFIND.Column + ADD_COLUMN).Address
                    
                     End If
                    
                   ' TARGET_LEN = Len(Sheets(SHEET_NAME_A).Cells(M_RNFIND.Row + ADD_ROW, M_RNFIND.Column + ADD_COLUMN))
                    
                    Set M_RNFIND = Sheets(SHEET_NAME_A).Range(range_to_range).FindNext(M_RNFIND)
                    
                    If M_RNFIND Is Nothing Then
                    
                        Exit Do
                
                    End If
                    
                    If Target = Sheets(SHEET_NAME_A).Range(M_RNFIND.Address) Then
                    
                        合計_add = 合計_add + 1
                        
                    End If
                    
                    BV = Filter(合計, M_RNFIND.Address)
                    
                        If UBound(BV) >= 0 Then
                                            
                            Exit Do
                            
                        End If
                    
                  
                    
                Loop While Not M_RNFIND Is Nothing And M_RNFIND.Address <> m_stAddress
            
            End If
            
        End If
        
        If Val(合計_add) = 0 Then
            
                找重複值的位置 = 0
                
                Exit Function
                
        End If
    
    找重複值的位置 = 合計


    End Function