[엑셀마리오게임] 셀 배경색 칠하기
VBA로 셀에 배경색 칠하는 방법! (Range.Interior)
이 강의에서는 엑셀 매크로 녹화 기능으로 셀 배경색 변경 동작을 직접 기록하고, 그 안에서 Range.Interior.Color 속성을 찾아내 VBA 명령문으로 작성하는 방법을 다룹니다. 매크로를 처음 다루는 분도 녹화된 코드의 구조를 분석하면서 셀 서식을 제어하는 기본 원리를 자연스럽게 익힐 수 있습니다.
VBA 프로젝트 강의
[엑셀마리오게임] 셀 배경색 칠하기
VBA로 셀에 배경색 칠하는 방법! (Range.Interior)
이 강의에서는 엑셀 매크로 녹화 기능으로 셀 배경색 변경 동작을 직접 기록하고, 그 안에서 Range.Interior.Color 속성을 찾아내 VBA 명령문으로 작성하는 방법을 다룹니다. 매크로를 처음 다루는 분도 녹화된 코드의 구조를 분석하면서 셀 서식을 제어하는 기본 원리를 자연스럽게 익힐 수 있습니다.
예제 파일
1개VBA프로젝트 2-1-2 셀-배경색-칠하기 - 예제파일.zip
실습자료를 준비했어요
수업에서 사용한 예제 파일과 보충 자료를 한 곳에 정리했습니다!👇
1. 엑셀 개발도구 설정하기
엑셀 개발도구를 활성화하는 자세한 방법은 관련 포스트를 참고해주세요.
2. 매크로 녹화하기
개발도구를 활성화한 뒤, 매크로 녹화 버튼을 클릭하여 매크로 녹화를 진행합니다.
매크로 녹화 버튼을 실행하는 방법은 크게 두 가지가 있습니다.
2-A. 개발도구 탭
상단 리본의 [개발 도구] 탭을 클릭하면, 좌측에서 [매크로 녹화] 버튼을 확인할 수 있습니다.
2-B. 좌측하단 상태 창
매크로 개발 도구를 활성화하면 엑셀 화면 좌측 하단의 상태 표시줄에도 작은 매크로 녹화 버튼이 함께 나타납니다.
3. 기록된 명령문 확인하기
A. 임의의 범위를 선택한 뒤 셀 배경색을 빨간색으로 변경합니다.
B. 임의의 범위를 선택한 뒤 셀 배경색을 노란색으로 변경합니다.
C. 배경색을 변경한 범위를 다시 선택한 뒤 채우기 없음으로 배경색을 지웁니다.
D. 매크로 녹화를 중단하고 ALT + F11 키를 눌러 기록된 매크로를 확인합니다.
위 동작을 녹화한 뒤 VBA 편집창을 열어보면, 아래와 같이 길게 매크로 코드가 자동으로 기록된 것을 확인할 수 있습니다.

기록된 매크로를 살펴보면, With 문 안에 동일한 속성들이 반복적으로 나열되어 있는 것을 확인할 수 있습니다.
이때 Pattern, TintAndShade 등 다른 속성의 값은 모두 동일하지만, Range.Interior.Color 속성의 값만 다르게 기록되어 있는 점이 눈에 띕니다.
또한 마지막 동작인 '채우기 없음'으로 배경색을 지웠을 때는 Color 속성 자체가 코드에 기록되지 않은 점도 함께 확인할 수 있습니다.
따라서,
라고 정리할 수 있습니다.
Range.Interior.Color 속성의 동작 원리에 관한 자세한 내용은 영상강의에서 단계별로 설명드렸으니 함께 참고해주세요.
4. 명령문 작성하기
모듈 창에 아래와 같이 명령문을 직접 입력합니다.
Sub BG_Red() Dim WS As Worksheet Dim Rng As Range Set WS = ThisWorkbook.Worksheets("Sheet1") Set Rng = WS.Range("A1:A10") Rng.Interior.Color = vbRed End Sub
명령문을 작성한 뒤, 코드 안의 아무 위치나 클릭한 상태에서 키보드 F5 키를 눌러 매크로를 실행합니다.
실행 결과 Sheet1 의 A1:A10 범위가 빨간색으로 변경된 것을 확인할 수 있습니다.
또한 시트에서 원하는 범위를 직접 선택해 사용자 지정 범위로 설정한 뒤 VBA 명령문의 범위 인수로 사용하면, 아래 화면처럼 '하트' 모양과 같이 원하는 셀 영역만 골라 배경색을 변경할 수도 있습니다.