- 최초 작성일: 2000-12-28
- 최종 수정일: 2026-09-29
- 조회수: 30 회
- 작성자: 권현욱 (엑셀러)
- 강의 제목: 셀에 시트 및 파일이름 표시하기
들어가기 전에
오래 전 엑셀 파일로 진행하던 강의를 웹 글로 복원한 것이라, "버튼을 눌러보세요"처럼 엑셀에서 직접 조작하라는 표현이 남아 있을 수 있습니다. 결과는 본문의 그림이나 표로 확인하실 수 있으며, 현재와 맞지 않는 내용은 보완하되 전반적인 스타일은 당시의 갬성(?)을 유지했습니다.
질문 하나
이제 VBA를 막 배우기 시작한 초보입니다.
엑셀러님의 강좌를 죄다 다운받아놓고 하나씩 보고 있는데요…
VB0004 강좌를 보다가 의문이 생겨 질문을 드리게 되었습니다.
VB0004 강좌에서 보면 ActiveSheet.Name이라는 명령을 사용해서 시트이름을
메시지 박스에 나타나게 하신 것이 있는데 혹시 이것을 일반 시트 상에서도
가능하게 할 수 있는지요?
긴급하거나 중요한 것은 아니지만 그냥 궁금해서요.
이 분의 질문을 보면서 "늙는다"는 것이 어떤 것인지 잠깐 생각해 보았습니다. 어린 아이들을 보면 눈에 보이는 모든 것이 신기하고 재미있는 것으로 여깁니다. 이제 태어난 지 다섯달이 갓 지난 Exceller의 2세를 가만히 보고 있노라면 그런 생각이 들곤 합니다. 무엇하나 그냥 보는 법이 없습니다. 골똘히, 뚫어져라 모든 대상을 쳐다 봅니다. 우리가 어렸을 때에도 그랬겠지요.
그러던 것이 한해 두해 지나가면 주위의 자극에 둔감해지고 특별한 일이 아니면 관심이 없어집니다. 웬만해서는 감동하거나 감격하지 않습니다. 또한 그런 식의 교육을 받아왔습니다. "남자는 태어나서 세 번 밖에 울어서는 안되는데, 태어나서 한번, … 어쩌구 저쩌구…" 하는…
젊음이라는 것은 육체적인 나이나 유연성을 일컫는 것이 아니라 마음의 상태가 아닌가 하는 생각이 듭니다. 아무리 나이가 어리더라도 주위의 자극에 둔감하고 부정적인 자세를 견지한다면 그는 청년이 아닙니다.
반대로 물리적 나이로는 환갑을 지났을지언정, 모든 일에 관심을 가지고 감동할 준비가 되어 있다면 그가 바로 청년입니다. 靑年이란 말 그대로 (마음이) 푸르른 연령이니까요.
오늘은 Exceller가 생각하는 청년관에 대해 說을 풀었습니다.
셀에 시트 및 파일이름 표시하기
핵심 요약
- CELL("filename")은 현재 통합문서의 경로·파일명·시트명 정보를 문자열로 돌려줍니다.
- RIGHT·LEN·FIND를 조합하면 대괄호 뒤의 부분을 추출해 현재 시트 이름만 표시할 수 있습니다.
- MID와 FIND를 사용하면 대괄호 사이의 문자열을 뽑아 현재 통합문서 파일명만 셀에 표시할 수 있습니다.
"워크시트의 이름을 셀에 표시할 수 있냐없냐"를 물으셨는데 별 희한한 것과 연관을 다 짓지요? ^^
사설은 여기서 접고… 당연히 있습니다. Cell이라는 함수를 사용하시면 됩니다. 물론 이 함수는 워크시트 함수이므로 일반 시트 상에서 사용가능 합니다.
="현재 시트의 이름은 """&RIGHT(CELL("filename"),LEN(CELL("filename"))-FIND("]",CELL("filename")))&""" 입니다"
= RIGHT(CELL("filename"),LEN(CELL("filename"))-FIND("]",CELL("filename")))
좀 복잡해 보이시지요? 초보냐 아니냐를 구분하는 한 가지 방법은 함수를 여러 개 섞어 사용했을 때, 눈이 핑핑 돌아가느냐 아니냐, 순환문과 반복문을 여러 겹 중첩해 놓았을 때, 어지러우냐 아니냐 하는 것입니다. 위 함수식이 마냥 어지럽게만 여겨지신다면 아직 가야할 길이 멉니다. ^^
Cell 함수를 이용하여 시트의 이름뿐만 아니라 파일명을 읽어올 수도 있습니다. 약간 더 길고 복잡해 보입니다.
="현재 파일의 이름은 """&MID(CELL("filename"),FIND("[",CELL("filename"))+1,FIND("]",CELL("filename"))-FIND("[",CELL("filename"))-1)&""" 입니다"
=MID(CELL("filename"),FIND("[",CELL("filename"))+1,FIND("]",CELL("filename"))-FIND("[",CELL("filename"))-1)
원래 Cell 함수는 참조 영역 내의 첫번째 셀의 서식이나 위치, 내용에 대한 정보를 알려주는 함수로 위에서 설명드린 것 이외에도 다양한 결과를 얻을 수 있습니다. 그 밖의 방법에 대해서는 도움말을 참고하시기 바랍니다.
오늘은 여기까지…
2000-12-28
정리 — 셀에 시트 및 파일이름 표시하기
| 구분 | 내용 |
|---|---|
| 시트 이름 | =RIGHT(CELL("filename"),LEN(CELL("filename"))-FIND("]",CELL("filename"))) |
| 파일 이름 | =MID(CELL("filename"),FIND("[",CELL("filename"))+1,FIND("]",CELL("filename"))-FIND("[",CELL("filename"))-1) |
| CELL 함수 | 참조 영역 내 첫번째 셀의 서식, 위치, 내용에 대한 정보를 알려주는 워크시트 함수 |
| 참고 | VBA에서는 ActiveSheet.Name으로 시트 이름을 얻음 |
자주 묻는 질문 (FAQ)
Q1. 현재 시트의 이름을 셀에 표시할 수 있나요?
CELL 함수로 파일 경로 정보를 가져온 뒤 RIGHT, LEN, FIND를 조합해 대괄호 뒤의 부분만 추출하면 시트 이름을 표시할 수 있습니다.
Q2. 통합문서의 파일 이름은 어떻게 표시하나요?
MID와 FIND로 CELL 함수 결과에서 대괄호 사이의 문자열을 추출하면 됩니다. 시트 이름보다 수식이 조금 더 깁니다.
Q3. CELL 함수는 시트 이름 외에 어떤 정보를 알려주나요?
참조 영역 내 첫번째 셀의 서식이나 위치, 내용에 대한 다양한 정보를 얻을 수 있으며 자세한 내용은 도움말을 참고하시면 됩니다.
마치며
워크시트 함수만으로 시트와 파일 이름을 표시할 수 있으니 문서 머리글 등에 활용해 보세요. VBA에 대한 기초 지식을 공부하실 분은 아이엑셀러 닷컴 사이트 상단 메뉴에서 [Excel 강의] - [Excel 입문]을 먼저 보시면 이해하기 쉽습니다.