[땡큐엑셀vba & 엑셀매크로] 단어검색
엑셀vba예제2020. 8. 20. 00:00
'https://kin.naver.com/qna/detail.nhn?d1id=1&dirId=102020101&docId=301558642
'
'
'
'여러 개의 단어들이 셀의 내용에 포함되어 있는지 알고 싶을 때 어떻게 해야할까요?
'예를들어, "aaa", "bbb", "ccc"가 포함되어 있는 셀을 찾고 싶을때,
'어떤 셀의 내용이 abcbccccc라면 true가 리턴되고,
'어떤 셀은 zbcd 라면 false가 결과값으로 나오게 하고 싶습니다.
'예시는 간단하게 들었지만, 찾아야 하는 단어수는 수백개이고,
'대상이 되는 문자열은 수십만개여서 VBA 함수를 작성하는 것이 필요합니다.
'문자열 처리에 관한 공부도 할겸 질문드리오니, 코드 작성 부탁드려요~^^
'
' Source by 땡큐엑셀vba & 엑셀매크로
'
Sub Main()
'B열 clear
Range("B:B").ClearContents
Set rng단어 = Sheets("단어").Range("A1").CurrentRegion
Set rng찾을범위 = Range("A1").CurrentRegion
'모든 단어에 대해 검색
For Each ea In rng단어
찾을값 = ea
'1.검색
Set rng = rng찾을범위.Find(what:=찾을값, lookat:=xlPart)
If Not rng Is Nothing Then '검색결과가 있다면
strAddr = rng.Address '첫 위치 주소
'2.검색결과가 없을때 까지 루프
Do
If rng.Offset(0, 1) = "" Then
rng.Offset(0, 1) = 찾을값
Else
rng.Offset(0, 1) = 찾을값 & "," & rng.Offset(0, 1) '검색 단어를 주~~욱 나열
End If
Set rng = rng찾을범위.FindNext(rng) '다음값으로
Loop While Not rng Is Nothing And rng.Address <> strAddr
End If
Next
MsgBox "완료되었습니다", vbInformation, "땡큐엑셀vba & 엑셀매크로"
End Sub
여러 개의 단어들이 셀의 내용에 포함되어 있는지 알고 싶을 때 어떻게 해야할까요-find_findnext-땡큐엑셀vba.xlsm
0.11MB
'엑셀vba예제' 카테고리의 다른 글
[땡큐엑셀vba & 엑셀매크로] 중복없는 난수표 (1) | 2020.08.22 |
---|---|
[땡큐엑셀vba & 엑셀매크로] H열,I열에 숫자를 넣으면 J열에 합계가 자동으로 출력-Worksheet_change이벤트 (0) | 2020.08.21 |
[땡큐엑셀vba & 엑셀매크로] 파일명의 앞글자와 일치하는 폴더로 이동하기 (0) | 2020.08.19 |
[땡큐엑셀vba & 엑셀매크로] 검색어가 포함된 모든 엑셀파일(파일명,시트명,셀주소,내용) 출력하기 (0) | 2020.08.18 |
[땡큐엑셀vba & 엑셀매크로] 동일한 값의 위아래에만 굵은 테두리를 넣으려면 어떤 방법이 있을까요? (1) | 2020.08.17 |