이 게시판은 아별닷컴 회원만 질문을 올릴 수 있습니다. 회원에게 주어지는 특권인셈이지요. 회원이 아닌 분들은 열람만 가능합니다.
글 수 133
안녕하세요.
담당자가 매번 수작업을 하던 작업내용입니다.
질문을 받고 함수를 적용해보려 했으나
어려움이 있어 질문을 하려고 합니다
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