본문 바로가기
■ 칼퇴를 위한 VBA : 사례/- VBA for 엑셀

엑셀 VBA로 특정 셀 찾기 및 바꾸기 방법

by 포탈메이커 2023. 6. 25.

엑셀 VBA로 특정 셀 찾기 및 바꾸기 방법

엑셀 VBA를 이용하면, 엑셀 시트에서 특정 셀을 찾아 내용을 바꿀 수 있습니다. 이 기능은 일일히 모든 셀을 찾아보는 것보다 훨씬 효율적입니다.

이번 글에서는 엑셀 VBA로 특정 셀을 찾고, 찾아낸 셀의 내용을 변경하는 방법에 대해 알아보겠습니다.

1. Find 함수를 이용한 특정 셀 찾기

Find 함수는 엑셀 VBA에서 매우 유용하게 사용되는 함수 중 하나입니다. 이 함수를 사용하면 특정 셀에서 원하는 값을 찾을 수 있습니다. Find 함수를 사용하기 위해서는 먼저 찾아야 할 셀의 범위를 설정해야 합니다. 다음은 Find 함수를 사용하여 특정 셀을 찾는 예시입니다.

Sub 값_찾기()
    Dim rng As Range
    Dim c As Range

    Set rng = Range("A1:A10")   ' 찾을 범위 설정
    Set c = rng.Find("찾을 내용")   ' 찾을 내용

    If Not c Is Nothing Then    ' 내용이 있는 경우
        c.Value = "바꿀 내용"    ' 바꿀 내용 입력
    Else    ' 내용이 없는 경우
        MsgBox "찾을 내용이 없습니다."
    End If
End Sub

코드에서는 A1부터 A10까지의 범위에서 "찾을 내용"을 찾고, 해당 내용이 존재하면 "바꿀 내용"으로 변경합니다. 만약 "찾을 내용"이 존재하지 않는다면 "찾을 내용이 없습니다."라는 메시지가 출력됩니다.


2. Cells 함수를 이용한 특정 셀 찾기

Find 함수 외에도 Cells 함수를 이용하여 특정 셀을 찾을 수 있습니다. Cells 함수는 엑셀 시트 상에서 특정 셀의 위치를 지정할 때 사용됩니다. 다음은 Cells 함수를 이용하여 특정 셀을 찾는 예시입니다.

Sub 값_찾기()
    Dim r As Long
    Dim c As Long
    Dim 찾을_내용 As String
    Dim 바꿀_내용 As String
    
    ' 찾을 내용 입력
    찾을_내용 = "찾을 내용"
    
    ' 찾을 범위 설정
    For r = 1 To 10
        For c = 1 To 5
            If Cells(r, c) = 찾을_내용 Then
                ' 바꿀 내용 입력
                바꿀_내용 = "바꿀 내용"
                Cells(r, c) = 바꿀_내용
            End If
        Next c
    Next r
End Sub

코드에서는 1부터 10행까지, 1부터 5열까지의 범위에서 "찾을 내용"을 찾고, 해당 내용이 존재하면 "바꿀 내용"으로 변경합니다.


3. Offset 함수를 이용한 특정 셀 찾기

Offset 함수는 특정 셀에서 지정한 행과 열 만큼 이동한 위치에 있는 셀을 찾습니다. 이 함수를 사용하면 특정 셀에서 상하좌우로 이동하여 원하는 셀을 찾을 수 있습니다. 다음은 Offset 함수를 이용하여 특정 셀을 찾는 예시입니다.

Sub 값_찾기()
    Dim 찾을_내용 As String
    Dim c As Range
    
    ' 찾을 내용 입력
    찾을_내용 = "찾을 내용"
    
    For Each c In Range("A1:A10")
        If c.Value = 찾을_내용 Then
            c.Offset(0, 1).Value = "바꿀 내용"    ' 오른쪽 셀에 값을 입력
        End If
    Next
End Sub

코드에서는 A1부터 A10까지의 범위에서 "찾을 내용"을 찾고, 해당 내용이 존재하면 오른쪽 셀에 "바꿀 내용"을 입력합니다.


4. 마무리

엑셀 VBA를 이용하면 특정 셀을 찾아 내용을 바꾸는 것이 매우 쉬워집니다. 특히, Find 함수, Cells 함수, Offset 함수를 이용하면 단 몇 줄의 코드로 원하는 기능을 수행할 수 있습니다. 이번 글에서는 이들 함수를 이용하여 특정 셀을 찾고, 해당 내용을 바꾸는 방법에 대해 알아보았습니다. 많이 활용해 보세요!

 

 

포스팅이 도움이 되셨다면 구독, 공감, 댓글 부탁드려요!

행복한 하루 되세요!