[데이터처리와활용] 7강. 엑셀 매크로 완전 정복

엑셀 매크로 완전 정복 — 절대참조, 상대참조, 정렬/부분합, 조건검색 매크로 쉽게 배우기

안녕하세요! 이번 글에서는 엑셀 매크로의 개념부터 VBA 코드 실습까지 기초부터 하나씩 쉽게 정리해보겠습니다.
처음 엑셀 매크로를 접하는 분도 따라 하기만 하면 바로 적용할 수 있도록 설명드리겠습니다.


매크로(Macro)란 무엇인가?

매크로(Macro)란 여러 명령을 묶어서 한번에 실행할 수 있도록 만든 명령 집합입니다. 엑셀에서는 매크로를 통해 반복되는 작업을 단 한 번의 클릭으로 처리할 수 있습니다.

  • VBA(Visual Basic for Applications) 언어로 매크로를 작성 가능

  • 자동매크로 기능: 사용자의 작업을 VBA 코드로 자동 기록 가능

주의사항
매크로 파일은 악성코드 위험이 있어 엑셀 기본 설정에서 실행이 차단되어 있으므로 반드시 신뢰할 수 있는 파일만 실행해야 합니다.

매크로 사용 설정

  • 파일 → 옵션 → 리본 사용자 지정 → 개발도구 체크

  • 개발도구 → 매크로 보안 → 모든 매크로 사용

절대참조 매크로 만들기

절대참조 매크로는 고정된 위치에서만 실행되는 매크로입니다.
예: B2:B11의 제곱값을 C2:C11에 저장

VBA 코드

1
2
3
4
5
Sub 절대참조제곱()
Range(“C2”).Select
ActiveCell.FormulaR1C1 = “=RC[-1]^2”
Selection.AutoFill Destination:=Range(“C2:C11”), Type:=xlFillDefault
End Sub
cs

코드 설명

  • Range("C2").Select : C2 셀 선택

  • ActiveCell.FormulaR1C1 = "=RC[-1]^2" : 왼쪽 셀 값의 제곱

  • Selection.AutoFill Destination:=Range("C2:C11") : C2부터 C11까지 복사

 

R1C1 형식이란?

엑셀 수식 표기 방식에는 두 가지가 있습니다.

  • A1 표기법: 일반적인 B2, C2 같은 셀 주소

  • R1C1 표기법: R = 행(Row), C = 열(Column)

    • RC[-1] → 현재 셀의 왼쪽 셀

    • RC[1] → 현재 셀의 오른쪽 셀

    • R[1]C → 현재 셀의 아래쪽 셀

 

여기서는 RC[-1]^2 이므로
→ 현재 셀의 왼쪽 셀 값을 제곱하겠다는 의미입니다.

상대참조 매크로 만들기

상대참조 매크로는 임의의 셀에서 매크로를 실행해도 왼쪽 셀을 기준으로 작업합니다.

VBA 코드

1
2
3
4
Sub 상대참조제곱()
ActiveCell.FormulaR1C1 = “=RC[-1]^2”
Selection.AutoFill Destination:=ActiveCell.Range(“A1:A10”)
End Sub
cs

코드 설명

  • ActiveCell.FormulaR1C1 : 현재 셀 기준 왼쪽 셀의 값 제곱

  • Selection.AutoFill : 현재 셀 기준 아래 10개 셀 자동 채우기

정렬 및 부분합 매크로

부서별 정렬과 부서별 급여 부분합, 초기화를 매크로로 자동화

부분합 예제

  1. 데이터 → 부분합

  2. 그룹, 계산항목, 통계량 선택

  3. 확인

버튼 생성

  • 개발도구 → 삽입 → 양식 컨트롤 버튼

  • 버튼에 매크로 연결

오류 예외 처리 팁

  • 정렬 전 부분합 삭제 필수

  • 자료 내부 셀을 선택하지 않으면 오류 발생 가능

조건 검색 매크로

라디오 버튼으로 중부, 서부, 동부 자료만 보기 또는 전체 보기

VBA 코드 예제

1
2
3
4
Sub 중부영업소()
Rows(“7:31”).EntireRow.Hidden = False
Rows(“32:75”).EntireRow.Hidden = True
End Sub
cs

서부/동부/전체 보기 코드

  • 서부영업소: Rows("32:50").EntireRow.Hidden = False

  • 동부영업소: Rows("51:74").EntireRow.Hidden = False

  • 전체보기: Rows("7:75").EntireRow.Hidden = False

라디오 버튼 설정 방법

  • 개발도구 → 삽입 → 옵션단추

  • 라디오 버튼 우클릭 → 매크로 지정

중요 내용 정리

  • 매크로란 명령어 집합으로 반복 작업 자동화 가능

  • 절대참조 : 고정 위치 기준 작업

  • 상대참조 : 현재 셀 기준 작업

  • 정렬/부분합 매크로로 데이터 분석 자동화 가능

  • 조건 검색 매크로로 선택된 구역만 표시 가능

  • VBA 코드에서 불필요한 부분 삭제로 효율적인 코드 관리


객관식 문제

1. 다음 중 매크로의 기능으로 옳은 것은?
① 셀 병합 기능
② 반복 작업을 자동으로 처리
③ 피벗 테이블 작성
④ 차트 작성

정답: ②
해설: 매크로는 반복 작업 자동화가 주목적

2. 절대참조 매크로의 특징은?
① 상대적인 위치에서 실행
② 실행할 셀의 위치에 따라 결과가 달라짐
③ 고정된 위치에서 실행
④ 여러 엑셀 파일에 적용 가능

정답: ③
해설: 절대참조는 고정된 셀 위치에 동작

3. 매크로에서 라디오 버튼을 눌렀을 때 특정 자료만 표시하게 하는 명령은?
① Sort
② AutoFill
③ Rows.Hide
④ EntireRow.Hidden

정답: ④
해설: 특정 행을 숨기거나 표시할 때 사용

댓글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다