엑셀 VBA 매크로 특정 단어가 있는 열 찾는 방법

2024. 8. 16. 21:17 / 서기랑

 엑셀에서 특정 단어가 있는 열의 위치를 찾는 VBA 매크로 코드를 정리해 봤다.

 코드와 함께 간단한 설명도 첨부했으니 아래의 글을 참고하면 매크로를 만들 때 도움이 될 것이다.

 

엑셀 VBA 매크로 특정 단어가 있는 열 찾기

1. 코드 예시.

 특정 단어가 있는 열을 찾는 코드는 아래와 같은 방식으로 작성할 수 있다.

For Each cell In Rows(행 번호).Cells
 If cell.Value = "찾을 단어" Then
  수행할 내용
  Exit For
 End If
Next cell

 

 예를 들어 1번 행에서 번호라는 단어가 있는 셀의 열을 찾아 column_num이라는 변수에 넣고 싶다면 아래와 같은 방식으로 코드를 작성할 수 있다.

For Each cell In Rows(1).Cells
 If cell.Value = "번호" Then
  column_num = cell.Column
  Exit For
 End If
Next cell

 

2. 코드의 설명.

- For Each cell In Rows(1).Cells

  For문을 사용하여 A열의 모든 셀을 순차적으로 반복하는 루프를 시작하는 부분. cell은 A열의 각 셀을 나타내는 변수이며 Range("A:A")는 A열 전체를 의미한다.

 

- If cell.Value = "번호" Then

 현재 셀의 값이 "번호"가 맞는지 확인하는 조건문의 시작 부분.

 cell.Value는 현재 셀의 값을 나타내며 이를 "번호"와 같은지 비교한다.

 다른 단어를 찾고 싶다면 이 부분을 변경하면 된다.

 

- column_num = cell.Column

 Exit for if

 조건이 맞으면 수행하는 부분.

 여기서는 셀 값이 "번호"가 맞으면 셀의 열 번호를 column_num 변수에 저장하고 더 이상 조건문을 반복할 필요가 없어지기 때문에 Exit for로 반복문을 종료한다.

 아닌 다른 작업을 수행하거나 추가 작업을 수행하고 싶다면 이 부분을 변경하며 된다.

 

- End if

 if 문의 종료를 위한 부분.

 

- Next cell

 루프의 다음 셀로 이동하는 부분. 1행의 모든 셀을 검사할 때까지 이 과정을 반복한다.

 

그 외 내용

 위 코드는 특정 단어가 있는 열을 찾고자 하는 경우 사용하는 기본 코드라고 보면 된다.

 생각보다 사용할 일이 많기 때문에 엑셀에서 매크로를 작성하고자 한다면 필수로 알아두는 것이 좋으며 이와 비슷한 방식으로 행을 찾을 수도 있다.

 엑셀 VBA 매크로 특정 단어가 있는 행 찾기