본문 바로가기
카테고리 없음

Excel VBA InStr 함수 사용하기

by 퍼포먼스마케팅코더 2024. 1. 20.
반응형

안녕하세요, 오늘은 Excel VBA를 사용하여 특정 키워드(예: "부산")가 포함된 데이터를 찾는 방법을 공유하겠습니다. 기존 코드를 개선하여 "경상도부산", "부산중", "부산중학교" 등 "부산"이 포함된 모든 문자열을 찾을 수 있도록 했습니다.

기존 코드의 문제점

기존 코드는 IsInArray 함수를 사용하여 특정 배열 내의 값과 정확히 일치하는 셀만을 찾았습니다. 이 방법은 "부산"이 정확히 일치하는 경우에만 유효했고, 부분 문자열 검색에는 적합하지 않았습니다.

개선된 VBA 코드

Sub 부산확인()
    Dim selectedRange As Range
    Dim cell As Range
    Dim count As Integer

    On Error Resume Next
    Set selectedRange = Application.InputBox("중복을 확인할 범위를 선택하세요.", Type:=8)
    On Error GoTo 0

    If selectedRange Is Nothing Then Exit Sub

    For Each cell In selectedRange
        If Not IsEmpty(cell.Value) And InStr(1, cell.Value, "부산") > 0 Then
            cell.Interior.Color = RGB(255, 0, 0)
            count = count + 1
        End If
    Next cell

    If count > 0 Then
        MsgBox count & "개의 부산 관련 셀이 있습니다.", vbInformation
    Else
        MsgBox "부산 관련 내용이 없습니다.", vbInformation
    End If
End Sub

이 코드는 InStr 함수를 사용하여 각 셀의 값을 검사합니다. InStr 함수는 첫 번째 인자로 시작 위치, 두 번째 인자로 검사할 문자열, 세 번째 인자로 찾고자 하는 키워드를 받습니다. 이 함수는 찾고자 하는 문자열이 존재하면 0보다 큰 값을 반환합니다. 따라서, "부산"이 포함된 모든 경우를 찾을 수 있습니다.

결론

이 방법을 통해 사용자는 Excel VBA를 사용하여 원하는 키워드가 포함된 데이터를 쉽게 찾을 수 있습니다. 이는 데이터 분석이나 정리 작업에서 매우 유용하게 활용될 수 있습니다.

반응형

댓글