자유 그리고 경험
[Excel]서식 지우기, 서식 복사하기 본문
안녕하세요~
간만에 오픈카톡방에서 제가 뚝딱 답변할 수 있는 질문이 나와서 호로록 해결해보고 포스팅해봅니다.
Q: 서식이 너무 많이 걸려있어서 버벅거리는데, 서식 한번에 지울 수 있나요?
질문하신 분은 사진으로 보아, 각종 조건부 서식. 셀병합 등도 걸려있는 것 같았습니다. 서식 때문에 붙여넣기가 안된다고도 하시더라구요.
실제로 병합된 셀에 다른 비병합 셀의 내용을 붙여넣기를 하려고 하면 잘 안됩니다. 되는 경우와 안되는 경우를 일일히 따져볼 필요는 없다고 생각하구요. 간단히 다시 병합을 풀어주고 붙여넣기를 하면 됩니다.
하지만 문제는 이런 셀들이 '너무 많다'는 것입니다. 한 번에 해줄 수 있는 방법이 있을까요?
A1: 서식 복사 버튼을 이용한다
엑셀에서는 서식복사를 쉽게 할 수 있는 버튼이 이미 있습니다. 사용법은 아래 gif와 같습니다.
서식 복사를 누르기 직전 선택되어 있는 셀의 서식을 복사하고, 클릭 후 드래그 시 여러 셀에 적용할 수 있습니다.
추가로, 하나의 셀이 아니라 덩어리별로 특정한 규칙으로 되어있는 셀들도 복사해서, 규칙대로 적용도 가능합니다.
서식 복사 버튼을 클릭하기 전 네칸의 셀 규칙대로 복사가 적용이 되는 것을 확인할 수 있습니다.
아쉽게도 셀의 넓이까지는 서식복사가 되지는 않네요.
이렇게 서식복사가 되는 것을 '역이용' 하여 서식을 '초기화' 할 수도 있습니다.
아무 서식도 적용되어 있지 않은 셀의 서식을 복사한 후 드래그해주면 되는 것이지요!
조건부서식, 셀 병합에 적용 결과 , 조건부서식은 제거되고, 셀 병합도 해제되어 잘 작동하는 것을 확인할 수 있습니다.
A2: 서식 복사 기능을 이용한다.
드래그는 한가지 한계점이 있습니다. 너무 많은 양의 셀에 다양한 서식들이 적용되어 있는 경우, 서식복사 드래그를 쭈~욱 끌고가는 시간이 귀찮을 수 있다는 점이죠. 이럴 때 할 수 있는 방법이 있습니다.
서식 복사는 다른 버튼으로도 가능합니다.
- 셀을 Ctrl+C로 복사 후
- 서식을 적용할 셀을 선택합니다.
- 오른쪽 버튼을 클릭합니다.
- 붙여넣기 옵션에서 '서식' 을 클릭합니다.
자, 이 기능까지만 안다면 복사해야할 범위를 쭈~욱 드래그해야하는 것은 여전히 똑같습니다. 하지만 우리에겐 셀 전체를 선택할 수 있는 단축키가 있죠.
Ctrl+A
최근의 엑셀에서는 스마트하게 선택해주느라고 근처 데이터가 있는 범위까지만 선택해주는 경우도 있는데, 그런경우는 Ctrl+A를 한번 더 눌러주시거나 , 다른 셀 선택, 범위를 좀더 넓게 잡고 Ctrl+A를 해보시면 전체 선택이 됩니다.
참고삼아 말씀드리면 Ctrl+A 에서 A는 All의 약자로, 윈도우 내 다른 곳에서도 활용이 많습니다.
폴더에서 모든 파일을 선택하고 싶을 때 Ctrl+A, 엑셀처럼 Shift로 범위선택, Ctrl로 개별 추가 선택도 가능한 것도 다들 아시죠??
그림판에서 그림 전체 선택도 Ctrl+A로 가능합니다.
제가 너무 다른길로 샜나요?
다시 돌아와서!
Ctrl+C -> Ctrl+A -> 서식 붙여넣기 를 하면 서식 복사가 되는 것이지요!
저기 아래 선택하여 붙여넣기를 선택하시면, 서식 외에 다른 속성들도 골라서 붙여넣기 하실 수 있습니다.
Q2: 아니, 이 서식 지우는 거 말고 사용자 서식이 너무 많아서 지우고 싶어요
이 사람, 저 사람 공용으로 컴퓨터를 쓰거나 스타일 지정을 필요할 때마다 만들어 놓고, 여기저기서 스타일 복사해서 붙여넣은 것을 정리하지 않으면 사용자 지정 스타일이 쌓일 수도 있습니다.
이걸 너무 많이 만들면 각종 에러들이 뜨기 시작하는데, 오른쪽 버튼 눌러서 하나씩 지워주기에는 너무 많아, 이걸 한번에 지워주고 싶습니다.
A:사실 저도 검색해봤습니다.
아래 링크로 들어가면 간결한 매크로 코드가 있는데요, 이건 엑셀이 미리 마련해준 기능으로 해결하기보다는 이렇게 매크로로 해결하는 것이 맞는 것 같습니다.
Sub StyleKiller()
Dim N As Long, i As Long
With ActiveWorkbook
N = .Styles.Count
For i = N To 1 Step -1
If Not .Styles(i).BuiltIn Then .Styles(i).Delete
Next i
End With
End Sub
간단한 로직이네요, 사용하는 파일에 있는 스타일을 모두 체크한 후, 기존에서 제공하는(BuiltIn) 스타일이 아니면 스타일을 지웁니다.
위의 코드는 Alt+F11을 누른 후, 새 모듈을 만들어서 붙여넣고 F5를 눌러 실행하면 됩니다.
포스팅이 너무 길어진 관계로, 다른 포스팅에서도 자주 만날 코드 붙여넣고 실행하는 방법은 따로 작성해보도록 하겠습니다.
긴 글 읽어주셔서 감사합니다.
'기술' 카테고리의 다른 글
구글 앱스 스크립트, 셀 데이터 읽고 쓰기 (0) | 2022.05.11 |
---|---|
인증(Authentication)과 인가(Authorization)/Login과 Logon (0) | 2022.05.08 |
[Google spreadsheet]자동화하기_윗줄 식 아랫줄에 복사_3편 (1) | 2021.11.15 |
[Google spreadsheet]자동화하기_윗줄 식 아랫줄에 복사_2편 (0) | 2021.11.14 |
[Google spreadsheet]자동화하기_윗줄 식 아랫줄에 복사_1편 (0) | 2021.11.13 |