엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

엑셀(Excel) VBA - Clear, ClearContents, ClearFormats 함수에 대한 사용법

환경 : Eclipse Mars, Android 4.2.2

Clear 함수는 워크시트에서 셀내용을 지우는 기능을 합니다. 지우기는 3가지가 있는데 모두지우기, 서식지우기,메모지우기 입니다. 이중 Clear 함수는 모두 지우기에 해당합니다. 내용만 지우기위해서는 ClearContents 함수를사용합니다. 서식을 지울려면 ClearFormats 함수를 사용합니다.

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

엑셀에서 서식과 값이 들어가 있는 셀을 아래 소스로 수정해 보았습니다. 결과를 봐서 아시겠지만 첫번째는 서식과 값이 모두 삭제되고 두번째 ClearContents 값만 삭제 된 것을 볼수 있습니다.

Range("A1").Clear

Range("A2").ClearContents

Range("A3").ClearFormats

메모를 삭제 하는 것은 ClearComments 함수입니다. 이렇게 해서 지우기 4가지를 모두 언급하였습니다.

Range("A5").ClearComments

지우는 방법 정리

셀만 지우고 싶을때

내용만 지우고 싶을때

아예 모두 지우고 싶을때

*코드*

-------------------------------------------------------------------------------------------------------

Sub 셀내용지우기()

              Cells(2, 2).Clear                '다 지우기
    Cells(3, 2).ClearContents    '내용 지우기
    Cells(4, 2).ClearFormats     '서식 지우기

     End Sub

-------------------------------------------------------------------------------------------------------

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo
예시

B열 내용에 맞게 지워보자

= > 코드 실행하자

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo
결과

이미 만들어 놓은 엑셀 양식을 여러사람이 사용하면 시간이 지날수록 속도가 점차 느려집니다.

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

이때 해결하는 방법 중 스타일을 제거하는 방법이 있습니다.

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

엑셀 메뉴에서 홈 메뉴 버튼을 클릭합니다.

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

'홈'메뉴에서 오른쪽에 스타일을 보시면 처음보는 여러 스타일이 있는 것을 확인하실 수 있습니다.

이때 매크로를 사용해서 지우시면 간단하게 필요없는 스타일을 지울 수 있습니다.

매크로 사용방법은 아래 링크를 클릭하세요 ↓

2020/10/25 - [IT와 친해지기/엑셀 VBA 자료실] - 엑셀VBA(매크로) - 시작하기

엑셀VBA(매크로) - 시작하기

직장인들은 대부분 엑셀에 익숙하실 겁니다. 하지만, 엑셀을 잘 활용하시는 분들은 아마 드물겁니다. 프로그램을 잘 하시는 분들은 파이썬이나 C언어, 자바 등을 가지고 필요한 도구들을 만들어

dotsnlines.tistory.com

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

'개발 도구' 매뉴에서 "Visual Basic"을 클릭합니다.

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

아래 그림과 같이 마우스 오른쪽을 클릭한 후 "파일 가져오기(I)..." 을 클릭합니다.

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

포스트 아래에 공유한 파일을 아래 그림과 같이 선택 하세요.

※ 메모장으로 미리 열어 보시면 아시겠지만 이상한 바이러스 코드 없는 깨끗한 코드이니 걱정마시고 다운로드 받으세요.

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo
엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo
모듈파일을 가지고 온 모습

아래의 모듈 파일을 가져오시면 위의 그림과 같이 "스타일제거"라는 이름의 모듈이 추가 된 것을 볼 수 있습니다.

이 모듈을 더블클릭 합니다.

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

위의 그림과 같이 이렇게 코드창이 나옵니다. 

위의 그림에 붉은색 네모 박스와 같이 초록색 재생버튼 같이 생긴 버튼을 누릅니다.

지우는데 시간이 좀 걸립니다. 커피를 한 잔 하시고 오시거나, 담배를 피우고 오시면 깨끗하게 지워진 것을 확인 하실 수 있습니다.

엑셀 서식 지우기 매크로 - egsel seosig jiugi maekeulo

기본 스타일만 남고 필요없는 스타일은 전부 지워졌습니다.

아래는 "스타일지우기" 모듈 파일입니다. ↓

스타일제거.bas

0.00MB

모듈 파일 전체 코드는 아래와 같으니 참고하세요

직접 타이핑 하셔도 되고요

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

Sub RebuildDefaultStyles()

Dim MyBook As Workbook

Dim tempBook As Workbook

Dim CurStyle As Style

On Error Resume Next '//오류가 발생하도 무시하고 계속 진행

 'Set MyBook to the active workbook.

Set MyBook = ActiveWorkbook

Application.ScreenUpdating = False

Application.Calculation = xlCalculationManual

'Delete all the styles in the workbook.

  For Each CurStyle In ActiveWorkbook.Styles

      If Not (CurStyle.BuiltIn) Then CurStyle.Delete  '//기본 스타일이 아닐 경우에만 삭제

Next CurStyle

'Open a new workbook.

  Set tempBook = Workbooks.Add

 'Disable alerts so you may merge changes to the Normal style

'from the new workbook.

  Application.DisplayAlerts = False

 'Merge styles from the new workbook into the existing workbook.

MyBook.Styles.Merge Workbook:=tempBook

'Enable alerts.

     Application.DisplayAlerts = True

 'Close the new workbook.

tempBook.Close

Application.ScreenUpdating = True

Application.Calculation = xlCalculationAutomatic

End Sub

cs