's exel 이만큼만하면...

보고서 작업 시 요긴한 함수 - sheet 명 가져오기

하늘바라기의사진한장 2023. 6. 5. 09:12

급여 대장 이나.. 일일 업부 보고시 제목 변경을 하고 출력해야 하는데.. 간혹  그 부분을 놓치는 경우가 간간히 발생할텐데.. 그러한 실수로 인해 재 출력해야 하는 번거로움을 피하기 위해서 조금 귀찮더라도 제목부분을 함수로 만들어 두시면  두고두고 편하게 사용하실 수 있지 않을까 싶습니다. ^^* 

="20"& REPLACE(CELL("filename"),1,FIND("]",CELL("filename"),1),"") &" 급여대장 "

셀선택 또는 fx 를 눌러서 위와 같이 함수를 입력하면 됩니다. 

위에 함수의 구성 간단하게 되어 있습니다. 복잡하지 않구여.. 규칙만 찾아 내면 누구나 만들어 낼 수 있습니다. 

이 구문은 문자 더하기, 문자 치환(replace), 그리고 find 함수를 통한 파일명의 끝이 어디인지 위치값을 찾는 함수.. 이렇게 3가지의 함수라  사용 됩니다. 

Cell("filename") 함수는 엑셀에서 제공해주는 함수입니다. 

 =CELL("filename")

함수를 넣으면 

이렇게 전체 파일명과 시트명 23년5월이 나오게 됩니다. 

여기서  찾아야 할껀 어디까지 텍스트를 "" 공백으로 변경해줄껀지를 찾는 것인데..

그 함수가 FIND 함수를 이용해서 "]" 의 위치 값을 찾는 것입니다. 

제가 여기서서 반환 받은 값은 29

함수가 의미하는 것을 풀어서 말씀드리자면

=CELL("filename")  ===> "D:\@급여명****\**********교\[급여대장(********).xlsm]23년5월"
FIND("]",CELL("filename"),1)  ====> 29

 

="20" & Replace("D:\@급여명****\**********교\[급여대장(********).xlsm]23년5월", 1, 29,"")&급여대장"

이렇게 되는 것입니다.