땡큐엑셀vba & 엑셀매크로

다중조건의 합

'http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=102020101&docId=279004736
'첨부파일과 같이 셀안에 파일명이 제각각입니다
'sumif함수를 사용하여 정리하려고 하였으나 자꾸 오류가 나서 지식인님들의 큰 도움이 필요합니다
'"무지손수건"+"블랙" 이렇게 두가지 단어나 세가지 단어를 만족한 셀의 값을 정리하고 싶습니다ex) 무지손수건 블랙 3개
'딕그립 그린 3개
'딕그립같은경우 악력기라고 되있는 셀도 있어 "딕그립"+"악력기"+"블랙" 이렇게 조합되어 있는 셀의 값의 모두 합한 값을 구하고 싶습니다
'도와주세요

 

 

'F2:검색어1 (예:딕그립)
'G2:검색어2 (예:그린)
'H2:검색어3 (예:3개)
'I2:합계가 출력됨
'검색어1,검색어2(생략가능),검색어3(생략가능)을 입력후 실행하세요



'
'source by 땡큐엑셀vba & 엑셀매크로
'
'검색어* & 검색어* & 검색어*  형태로 검색하는게 핵심
'*(에스터리스크)는 모든것을 의미함. 즉 검색어*는 검색어를 포함하고 있는 어떤것이란 의미
'&는 and의 의미임
'즉 검색어1, 검색어2, 검색어3을 포함하고 있는 문장을 찾으면 됩니다.
'
Sub 다중조건의합계()
    Dim 범위 As Range
    Dim Rng As Range
    
    
    합계 = 0
    
    마지막행 = Cells(Rows.Count, "A").End(xlUp).Row
    Set 범위 = Sheets("Sheet3").Range("A2:A" & 마지막행)
    

    '검색어 조립
    찾을값 = Cells(2, "F")
    
    If Cells(2, "G") <> "" Then
        찾을값 = 찾을값 & "*" & Cells(2, "G")
    End If
    
    If Cells(2, "H") <> "" Then
        찾을값 = 찾을값 & "*" & Cells(2, "H") & "*"
    End If
    
    
    
     '1.검색
    Set Rng = 범위.Find(what:=찾을값, lookat:=xlPart)

    
    If Not Rng Is Nothing Then '검색결과가 있다면
        strAddr = Rng.Address  '첫 위치 주소
        
        '2.검색결과가 없을때 까지 루프
        Do
            합계 = 합계 + Rng.Offset(0, 2) '즉 C열
            Set Rng = 범위.FindNext(Rng) '다음값 찾기
        Loop While Not Rng Is Nothing And Rng.Address <> strAddr
    End If
    
    

    Cells(2, "I") = 합계
    
    
     MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"
End Sub

 

다중조건의 합계구하기-Find,FindNext-땡큐엑셀vba.xlsm
0.06MB