가끔 지난 달, 다음 달, 두 달 전, 세 달 전과 같이 날짜 중 월 부분만 필요할 때가 있다.
그럴 땐 EDATE() 나 EOMONTH() 함수를 사용하면 편리하다.
두 함수 모두 두 번째 인자로 변화할 개월 수를 받는데,
한달 전은 -1, 한달 후는 1 과 같이 입력하면 된다.
A5에 TODAY()를 입력하고, 위로 EDATE(셀, -1)을 입력한 결과는 다음과 같다.
한달 전의 같은 날짜를 반환해 주는 것을 알 수 있다.
두달 후의 같은 날짜는 EDATE(셀, 2) 와 같이 입력한다.
월에 해당하는 숫자만 필요하다면 범위를 잡고 Ctrl + 1 을 눌러 셀 서식에 들어간 후
(참고: 2016/09/22 - [엑셀] - [엑셀] 셀 내용에 큰따옴표 넣기 (표시 형식))
사용자 지정에서 M"월" 혹은 MM"월" 을 입력하면
(전자는 1월, 후자는 01월에 해당)
깔끔하게 숫자만 얻을 수 있다.
EOMONTH() 는 EDATE() 와 거의 동일하나, 해당 월의 맨 마지막 날짜를 반환해 준다는 특징이 있다.
즉, 다음과 같이 EDATE()를 EOMONTH() 로 교체하면
지난 달인 6월을 반환해 주는 것은 맞는데, 오늘 날짜가 아니라 6월의 마지막 날을 반환해 주는 것을 알 수 있다.
어차피 날짜 중 월에 해당하는 부분만 뽑아서 사용할 경우에는 크게 차이가 없다고 보아도 되겠다.
혹 EDATE()에서 없는 날짜(예를 들어 7/31의 한 달 전은? 6/31 ??)를 출력해야 할 경우 에러가 나지 않을까 생각할 수 있지만
다음을 보면 EDATE()도 그리 융통성 없이 처리하지는 않는 것을 알 수 있다.
위와 같이 A7 에 2018-07-31을 입력 후 위로 한 달씩 감하도록 수식을 구성할 경우
31일이 없는 달은 자동으로 가장 마지막 날짜를 반환해 주는 것을 알 수 있다.
'엑셀' 카테고리의 다른 글
[엑셀] 특정 문자가 들어 있는(포함된) 행 모아서 추출하기 (9) | 2018.10.16 |
---|---|
[엑셀] 인터넷에서 다운받은 파일의 '제한된 보기' 해결 방법 (0) | 2018.10.02 |
[엑셀] VLOOKUP 대신 INDEX, MATCH 를 사용하면 좋은 4가지 경우 (0) | 2018.08.30 |
[엑셀] VLOOKUP 대신 INDEX, MATCH 사용하기 (0) | 2018.08.28 |
[엑셀] 배열수식에서 AND, OR, NOT 등의 논리연산 사용하기 (2) | 2018.07.10 |
[엑셀] 최초로 0이 아닌 값이 나오는 곳 찾기 INDEX() MATCH() (26) | 2018.06.13 |
[로또] 로또 1등 당첨금액 계산 및 확률 검증 (큰수의법칙) (1) | 2018.05.28 |
[엑셀] 특정 문자와 일치하는 행 모아서 다른 시트로 추출하기 (51) | 2018.04.17 |
[엑셀] 특정 문자와 일치하는 행 모아서 추출하기 (33) | 2018.03.07 |
[구글시트] 다른 시트로부터 내용 가져오기 Importrange (6) | 2018.03.06 |
댓글