땡큐엑셀vba & 엑셀매크로

 

 

'http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=102020101&docId=279914404
'
'표와 같이 3개의 구간 3번을 거쳐서 결과값을 찾는 작업인데요
'index/match로 하면 1개 구간은 검색이 되는데 3번 전부 매칭시켜서 답을 찾는게 안되네요 ㅠㅠ
'뭘 어떻게 해야 할까요??ㅠㅠ
'=INDEX(B2:E28,MATCH(B30&C30&D30,B2:B28&C2:C28&D2:D28,-1),4)
'이렇게 해도 안되더라구요
'저 구간들을 그냥 30, 19, 14로만 표기해서도 해봤는데 안되는데
'어떻게 해야 할까요??



'
'source by 땡큐엑셀vba & 엑셀매크로
'
Sub 값찾기()

    조건1 = Cells(1, "B")
    조건2 = Cells(1, "C")
    조건3 = Cells(1, "D")
    
    마지막행 = Cells(Rows.Count, "B").End(xlUp).Row
    
    구분자 = "~"
    '마지막행까지 루프돌며 3개의 구간을 만족하는 값 찾기
    For i = 2 To 마지막행
    
        '조건1
        'split내장함수를 사용하여 두개의 값으로 나눈다. 두개의 값은 값1(0),갑1(1)에 들어간다.
        값1 = Split(Cells(i, "B"), 구분자)
        If 조건1 >= Int(값1(0)) And 조건1 <= Int(값1(1)) Then
        
            
            '조건2
            값2 = Split(Cells(i, "C"), 구분자)
            If 조건2 >= Int(값2(0)) And 조건2 <= Int(값2(1)) Then
            
            
                '조건3
                값3 = Split(Cells(i, "D"), 구분자)
                If 조건3 >= Int(값3(0)) And 조건3 <= Int(값3(1)) Then
            
                    '최종 일치하는 행 찾았다.
                    Cells(1, "E") = Cells(i, "E")
                
                End If '조건3

            
            End If '조건2

        
        End If '조건1
 
    Next i


    MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"

End Sub

 

 

3개의구간을만족하는값찾기-spilt_int-땡큐엑셀vba.xlsm
0.17MB