엑셀에서 많이 사용하는 데이터 형식 중 하나가 날짜이다.
날짜 관련 함수 중에서 NOW( )는 현재 시간을, TODAY( )는 현재 날짜를 나타내는데,
아직까지 실무에서 별 도움이 안되는 함수 같다. ^^;;
왜냐하면 TODAY( )함수로 날짜를 입력 한 경우
그 셀은 매번 엑셀 파일을 연 날짜를 보여주기 때문이다.
(표에 오늘의 날짜는? 이런 식으로 표현하면 도움이 될지도 모르지만..)
위 표처럼 TODAY()함수를 써서 저장하고 내일 파일을 열어보면 저 날짜 부분은 내일 날짜로 바뀌어 있을테니까....
오히려 날짜 입력에 있어서는 오늘 날짜를 입력하는 단축키가 더 실용적이다.
Ctrl + ;(세미콜론) 은 현재 위치에 오늘 날짜를 입력하는 단축키이다.
현재의 시간을 입력하는 단축키는 Ctrl + :(콜론) 인데 :을 입력하기 위해서는 Shift를 사용해야 하기 때문에
그냥 Ctrl + Shift + ;(세미콜론)으로 기억해도 괜찮다.
날짜에서 제일 많이 사용하는 함수는 DATE( ), YEAR( ), MONTH( ), DAY( ) 네가지이다.
YEAR( ), MONTH( ), DAY( )는 각각의 년, 월, 일을 인수로 하나씩 받고
DATE( ) 함수는 연, 월, 일.. 세가지를 인수로 받는다.
위 그림처럼 YEAR, MONTH, DAY는 날짜 형식으로부터 년, 월, 일 데이터를 추출해서 보여준다.
DATE는 년, 월, 일에 해당하는 데이터를 사용하거나, YEAR( ), MONTH( ), DAY( )로 필요한 데이터를 추출하여 사용한다.
다음은 DATE( )함수로 각 직원이 입사한 월의 첫날을 계산한 것이다.
년과 월은 입사일 셀(B열)로부터 구하고 DAY는 1일로 입력했다.
그렇다면 입사한 월의 마지막 날은 어떻게 구할까?
DATE 함수는 인수로 자연수 범위 뿐 아니라 0이나 음수도 입력 가능하다.
0은 숫자 하나를 빼는 것과 같은 의미이고, -1은 둘을 빼는 것과 같다.
직접 확인해보면 다음과 같다.
DATE(2014, 1, 1) 은 예상한 것처럼 2014-01-01을 반환한다.
그 아래 DATE(2014, 1, 0)은 2014-01-01에서 하루 전날인 2013-12-31을 반환한다.
이처럼 DAY 부분의 0은 하루 전날을 의미한다.
그래서 DAY 인수에서 -1은 이틀전인 2013-12-30을 반환하는 것이다.
MONTH 인수에서의 0은 한 달 전을 의미한다.
이런 DATE 함수의 특성을 이용해서
입사한 달의 마지막 날을 구하면 아래와 같다.
날짜는 마지막 날이 30일, 31일 등 불규칙적이기 때문에 그 다음달을 구하고 거기서 하루를 빼는 방법으로 계산한다.
그래서 YEAR는 입사일로부터 그대로 받아오고, MONTH는 입사한 달 +1, DAY는 0을 입력해서 하루를 뺐다.
'Excel > 엑셀 함수' 카테고리의 다른 글
엑셀] 텍스트를 숫자로, 숫자를 텍스트로 - VALUE, TEXT 함수 (0) | 2014.02.04 |
---|---|
엑셀] 셀 범위에서 찾는 값이 몇번째 있을까?? - MATCH (1) | 2014.02.03 |
엑셀] 표에서 원하는 값 찾기(3) - INDEX (0) | 2014.02.02 |
엑셀] 표에서 원하는 값 찾기(2) - HLOOKUP 함수 (0) | 2014.02.02 |
엑셀] 표에서 원하는 값 찾기(1) - VLOOKUP (0) | 2014.01.27 |
엑셀] 날짜 차이 구해서 년, 개월, 일 형식으로 계산하기 - DATEDIF (2) | 2014.01.19 |
엑셀] 필터, 숨기기로 셀 숨기고 계산하기 - SUBTOTAL (4) | 2014.01.17 |
엑셀] 조건에 따라 합계 구하기 - SUMIF, SUMIFS (0) | 2014.01.16 |
엑셀] 갯수 세기 - COUNT, COUNTA, COUNTIF, COUNTIFS (17) | 2014.01.15 |
엑셀] AND 함수로 여러 조건 만족시키는 경우 찾기 (0) | 2014.01.14 |
댓글