[땡큐엑셀vba & 엑셀매크로] 다중조건의 합
엑셀vba예제2020. 7. 16. 00:00
'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
'엑셀vba예제' 카테고리의 다른 글
[땡큐엑셀vba & 엑셀매크로] 중간글자 마스킹처리 사용자정의 함수 (0) | 2020.07.18 |
---|---|
[땡큐엑셀vba & 엑셀매크로] 오늘 날짜인 셀로 이동 (0) | 2020.07.17 |
[땡큐엑셀vba & 엑셀매크로] 한글을 제외하고 모든 문자를 삭제하는 매크로가 알고 싶습니다. (0) | 2020.07.15 |
[땡큐엑셀vba & 엑셀매크로] 점수로 변환하는 사용자정의함수 (0) | 2020.07.14 |
[땡큐엑셀vba & 엑셀매크로] 사용자 정의 함수로 글자수를 파악하고자 합니다. (공백 포함, 공백 비포함으로 구분) (0) | 2020.07.13 |