엑셀에서 현재 시간을 반환하는 함수는 now 입니다. 그런데, 데이터가 입력된 시간을 저장하기 위해 now 함수를 사용하게 되면 낭패를 보게 됩니다. 오늘 데이터를 입력하였고 now라는 함수에 의해 현재시간이 입력되었지만, 내일 다시 파일을 열어보면 내일의 시간이 보여지게 됩니다. 사용자가 원하는 바는 어제 입력된 시간이 유지되는 것이었는데 말이죠.
엑셀에서 현재시간을 입력하고 변경이 없이 계속 저장하는 방법은 3가지가 있는데요.
그때마다 직접 입력하는 방법과 순환참조를 이용하는 방법과 매크로를 이용하는 방법입니다.
엑셀에서 현재시간을 저장하기
How to save current time in cell
직접 입력하기
셀에서 단축키 Ctrl + ; 을 실행하면, 현재 날짜가 자동으로 입력되며,
Ctrl + Shift + ; 을 실행하면, 현재 시간이 자동으로 입력됩니다.
물론, 시간이 지나도 입력된 값은 변경되지 않습니다만,
그때 그때 직접 입력을 해줘야 해서 번거롭습니다.
순환참조 이용하기
이 방법을 사용하려면, 먼저 [옵션]-[수식]-[계산옵션]에서
반복 계산 사용에 체크를 해야 합니다.
그리고, 시간이 표시될 셀에 다음과 같은 수식을 입력하면 되는데요.
=IF("데이터가 입력되는 셀"<>"",IF("시간이 표시될 셀"="",NOW(),"시간이 표시될 셀"),"")
이 방법은 시간이 입력되는 셀에 미리 수식이 입력되어 있어야 합니다.
두번째 IF 조건문을 보시면, 시간이 표시될 셀이 빈셀이 아닐경우
입력된 값을 유지하도록 되어 있기 때문에, now 함수를 사용하여도
맨 처음 입력된 시간이 유지되는 것입니다.
매크로 이용하기
단축키 Alt + F11 을 실행하면 매크로 입력창이 나오게 되는데요.
먼저 좌측창에서 적용하고자 하는 워크시크를 더블클릭후
우측에 나타나는 창에 아래와 같이 입력하면 됩니다.
2번째 column 즉, B열에 특정 데이터가 입력될 경우
우측으로 3열 즉, E열에 dd:hh:mm:ss의 형식으로
현재 시간이 입력되게 됩니다.
입력되는 열과 표시되는 열의 위치만 수정하여 적용하면 됩니다.
이상입니다.
'Macros' 카테고리의 다른 글
일정한 수의 열마다 빈열 삽입하기 (0) | 2023.05.15 |
---|---|
스핀단추, 목록상자, 콤보상자 외-양식컨트롤 알아보기 (0) | 2015.12.28 |
[엑셀] 셀서식이너무많습니다. (11) | 2015.12.01 |
free Add-ins 엑셀 추가기능 (0) | 2015.11.28 |
셀 병합시 내용유지하기 (5) | 2015.11.27 |