이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.
안녕하세요.
담당자가 매번 수작업을 하던 작업내용입니다.
질문을 받고 함수를 적용해보려 했으나
어려움이 있어 질문을 하려고 합니다
1. 화면에 붉은색으로 테두리가 쳐져있는부분이 데이터가 삽입되어야 할 부분입니다.
2. 다음과같은 현직급의 발령일자를 기준으로 데이터가 삽입되도록 하려고 합니다
3/1 이전 발령자 --> 해당년도-03-01
3/2 ~ 9/1 발령자 --> 해당년도-09-01
9/2 이후 발령자 --> 다음년도-03-01
함수를 적용해보고 싶은데 년도가 계속 유동적으로 변하는거라 어떻게 해야할지를 모르겠습니다.
답변 기다리겠습니다.
감사합니다.
IF문에 OR, DATE, YEAR, MONTH 함수를 조합한 중복함수가 필요하겠습니다.
D2셀에 아래의 수식을 입력하고 아래로 쭉 채우시면 됩니다.
=IF(OR(MONTH(C2)<3,C2=DATE(YEAR(C2),3,1)),DATE(YEAR(C2),3,1),IF(OR(MONTH(C2)<9,C2=DATE(YEAR(C2),9,1)),DATE(YEAR(C2),9,1),DATE(YEAR(C2)+1,3,1)))
위 수식과 같이 언뜻 보기에 복잡해 보이는 수식은 요소별로 끊어서 분석하시면 됩니다.
IF문의 기본 구조가 IF(조건식1, 참일때, 거짓일때) 인데요..
저 수식은 IF문을 중첩해서 사용한 것이지요.
거짓일때에는 특정 값 대신에 다시 IF문 ( 조건식2, 참일때, 거짓일때 ) 을 사용했네요.
결국 이런 형태가 되었습니다. IF(조건식1, 참일때, IF문( 조건식2, 참일때, 거짓일때 ) )
조건식1이 참이면, 참일때의 값을 갖고, 거짓이면 다시 조건식2를 평가해서 참일때는 참일때의 값, 거짓일때는 거짓일때의 값을 갖습니다.
조건식1은 OR(MONTH(C2)<3,C2=DATE(YEAR(C2),3,1)) 죠..
발령일자의 월이 3월 미만이거나 3월 1일자면 참이 되어서, 참일때의 값인 해당년도의 3월 1일( DATE(YEAR(C2),3,1) )이 됩니다.
발령일자가 3월 1일 이후라면.. 즉 거짓일때는.. 다시 9월 1일이전입사인지를 평가하고,
9월 1일 이전 입사자면 해당년도의 9월 1일이 되고, 이것도 저것도 아니면 내년도 3월 1일( DATE(YEAR(C2)+1,3,1) )이 됩니다.
첨부파일 다운 받기 : abyul_20090720_CalculateDate.xls