문의 내용
“엑셀이 너무 느려졌어요.” 데이터는 많지 않은데 파일을 열 때마다 20초 넘게 걸리고, 셀 하나만 고쳐도 몇 초씩 멈추는 업무용 엑셀이었습니다.
원인
시트별 도형 개수를 세어 보니, 눈에 보이지 않는 빈 텍스트 상자가 약 8만 개 숨어 있었습니다. 복사·붙여넣기를 반복할 때마다 함께 복제된 것으로, 시트 한 장에만 5만 7천여 개가 있었습니다.
해결
- 원래 있던 그림은 남기고 숨은 상자만 지우는 VBA 매크로 작성
- 수만 개를 한 번에 지우면 엑셀이 멈추므로 5,000개씩 나눠 삭제, 실패한 묶음은 하나씩 다시 시도
- 데이터와 서식은 그대로 유지
결과
| 항목 | 수정 전 | 수정 후 |
|---|---|---|
| 파일 여는 시간 | 21.2초 | 1.7초 |
| 셀 수정 후 재계산 | 3.0초 | 0.3초 |
| 파일 크기 | 3.6MB | 1.6MB |
화면의 데이터는 가린 예시입니다. 시간은 같은 PC에서 측정했습니다.


