이 튜토리얼에서 사용할 샘플 데이터입니다.

1단계: 셀을 지우는 VBA 모듈 만들기
- 개발 도구 탭으로 이동한 후 Visual Basic을 클릭합니다.
또는 키보드에서 ALT + F11 키를 눌러 'Microsoft Visual Basic for Applications' 창을 바로 열 수도 있습니다.

- 삽입(Insert) 메뉴에서 모듈(Module)을 선택합니다.

2단계: 모듈에 VBA 코드 입력하기
- 열린 모듈 창에 아래 VBA 코드 중 원하는 기능에 해당하는 코드를 입력합니다.
① 셀 서식은 유지하고 값만 지우는 코드
Sub Clear_Cell_With_Button()
Dim rng As Range
Set rng = Application.InputBox(Prompt:="Select the Range of Cell", Title:="Exceldemy", Type:=8)
rng.Select
Selection.ClearContents
End Sub

② 셀 값과 서식까지 모두 지우는 코드
Sub Clear_Cell_With_Button_including_Format()
Dim rng As Range
Set rng = Application.InputBox(Prompt:="Select the Range of Cell", Title:="Exceldemy", Type:=8)
rng.Select
Selection.Clear
End Sub

③ 셀 자체를 삭제하는 코드
Sub Delete_Cell_With_Button()
Dim rng As Range
Set rng = Application.InputBox(Prompt:="Select the Range of Cell", Title:="Exceldemy", Type:=8)
rng.Select
Selection.Delete
End Sub

더 읽어보기: 엑셀 VBA로 범위 내용 지우기
Clear, Delete, ClearContents 명령의 차이점
ClearContents 명령은 셀 안의 값만 지우고 셀 서식은 그대로 유지합니다. Clear 명령은 셀 값과 서식을 모두 제거하여 셀을 완전히 비웁니다. Delete 명령은 셀 자체를 삭제하고 그 아래 있던 셀들을 위로 이동시킵니다.
3단계: 셀 지우기 버튼 만들기
- 개발 도구 탭으로 이동합니다.
- 삽입(Insert)을 클릭하고 Button(단추)을 선택합니다.

- 버튼을 배치하고 싶은 위치에 마우스를 드래그해 상자 모양으로 그립니다.

- '매크로 지정(Assign Macro)' 창이 열리면 앞서 만든 매크로를 선택합니다.
- 확인(OK)을 클릭합니다.

- 선택한 영역에 매크로 버튼이 생성됩니다. 버튼을 마우스 오른쪽 버튼으로 클릭한 뒤 이름을 '내용만 지우기'로 변경합니다.

- 같은 방법으로 나머지 두 코드에 대한 버튼도 만들고, 각각 '서식 포함해서 지우기', '셀 삭제'로 이름을 지정합니다.

4단계: 버튼으로 VBA 매크로 실행하기
- '내용만 지우기' 버튼을 클릭하면 선택한 셀의 값만 지워집니다.

- 창이 열리면 범위를 선택한 후 확인(OK)을 누릅니다.

- 선택한 셀의 값은 지워졌지만 서식은 그대로 유지됩니다.

- '서식 포함해서 지우기' 버튼을 클릭하면 셀 값과 서식이 모두 제거됩니다.
- 지우고 싶은 셀 범위를 선택한 후 확인(OK)을 누릅니다.

선택한 셀이 깨끗하게 지워진 것을 확인할 수 있습니다.

- '셀 삭제' 버튼을 클릭하고 셀 범위를 선택합니다.

선택한 셀이 삭제되고 아래쪽 셀들이 위로 이동합니다.

더 읽어보기: 엑셀 VBA로 시트 전체 내용 지우는 방법
연습용 워크북 다운로드
아래에서 연습용 워크북을 다운로드할 수 있습니다:
함께 읽으면 좋은 글
- 엑셀 VBA로 수식은 유지하면서 셀 내용만 지우는 방법
- 엑셀 VBA로 이름 정의된 범위의 내용 지우기
- 엑셀 VBA로 셀 또는 열 삭제 후 왼쪽으로 밀어 넣기
- 엑셀 VBA: 특정 값을 포함하는 셀의 내용만 지우기
무료 고급 엑셀 연습 문제와 해답을 지금 받아보세요!