Excel을 사용하여 프로젝트에 대한 정보를 추적하는 경우 특정 프로젝트의 기간을 년, 월, 일 단위로 알고 싶을 수 있습니다. 각 프로젝트의 시작 날짜와 종료 날짜가있는 경우 DATEDIF 워크 시트 함수를 사용하여 원하는 방식으로 정보를 반환 할 수 있습니다.

예를 들어 E7 셀에 시작 날짜가 있고 F7 셀에 종료 날짜가 있다고 가정 해 보겠습니다. DATEDIF를 아주 간단하게 사용하여 두 날짜의 차이를 계산할 수 있습니다.

=DATEDIF(E7,F7,"d")

이 함수는 E7의 날짜가 F7의 날짜보다 작거나 같은 경우 두 날짜 사이의 일 수를 반환합니다. 세 번째 인수 “d”는 DATEDIF가 결과를 일 단위로 반환하도록합니다. 월 ( “m”) 및 연도 ( ‘y “)를 지정할 수도 있습니다. 그러나이 예제의 목적을 위해 특히 유용한 몇 가지 다른 인수가 있습니다. 연도를 제외한 월 (“ym “), 연도를 제외한 일 (“ym “) “yd”) 및 월과 년을 제외한 일 ( “md”).

이러한 다른 인수를 사용하여 경과 일을 년, 월로 표시하는 답을 반환하는 수식을 만들 수 있습니다. 및 일.

(이 팁의 수식의 길이 때문에 좀 더 읽기 쉽도록 별도의 줄로 나눴습니다. 그러나 이것은 단일 수식이므로 다음과 같이 입력해야합니다. Excel로.)

=DATEDIF(E7,F7,"y") & " years, " & DATEDIF(E7,F7,"ym")

& " months, " & DATEDIF(E7,F7,"md") & " days "

이 수식은 항상 년, 월, 일과 같이 복수 단위를 반환합니다. 문법적으로 정확하고 요청 될 때 단수 단위를 제공하면 다음 공식이 트릭을 수행합니다.

=IF(DATEDIF(E7,F7,"y")=1,DATEDIF(E7,F7,"y")&" year, ", DATEDIF(E7,F7,"y")&" years, ")&IF(DATEDIF(E7,F7,"ym")=1, DATEDIF(E7,F7,"ym") &" month, ",DATEDIF(E7,F7,"ym")

&" months, ")&IF(DATEDIF(E7,F7,"md")=1,DATEDIF(E7,F7,"md")

&" day",DATEDIF(E7,F7,"md")&" days")

This wor 연, 월 또는 일이 0 인 경우를 제외하고 모든 인스턴스에서 ks입니다. 0 일 때 적절한 단위를 제거하려면 더 긴 공식이 필요합니다.

=IF(DATEDIF(E7,F7,"y")=0,"",IF(DATEDIF(E7,F7,"y")=1, DATEDIF(E7,F7,"y")&" year, ",DATEDIF(E7,F7,"y")&" years, "))

&IF(DATEDIF(E7,F7,"ym")=0,"",IF(DATEDIF(E7,F7,"ym")=1, DATEDIF(E7,F7,"ym")&" month, ",DATEDIF(E7,F7,"ym")&" months, "))

&IF(DATEDIF(E7,F7,"md")=0,"",IF(DATEDIF(E7,F7,"md")=0, DATEDIF(E7,F7,"md")&" day ",DATEDIF(E7,F7,"md")&" days"))

이 수식은 상당히 길어지고 있지만 값이있는 단위 만 반환합니다. 따라서 “0 년, 2 개월, 1 일”을 반환하는 대신 “2 개월, 1 일”을 반환합니다.

이것이 보장되지 않는 일부 상황에서 항목 사이에 쉼표를 표시하므로 완벽한 공식은 아닙니다. 다음 메가 포뮬러는 복수형과 쉼표를 수정하고 0 개의 항목을 제거해야합니다.

=IF(DATEDIF(E7,F7,"y")=0,"",IF(DATEDIF(E7,F7,"y")=1, DATEDIF(E7,F7,"y")&"year",DATEDIF(E7,F7,"y")&"years"))

&IF(AND(DATEDIF(E7,F7,"y")<>0,DATEDIF(E7,F7,"ym")<>0),", ","")

&IF(DATEDIF(E7,F7,"ym")=0,"",IF(DATEDIF(E7,F7,"ym")=1, DATEDIF(E7,F7,"ym")&" month",DATEDIF(E7,F7,"ym")&" months"))

&IF(AND(OR(DATEDIF(E7,F7,"y")<>0,DATEDIF(E7,F7,"ym")<>0), DATEDIF(E7,F7,"md")<>0),", ","")&IF(DATEDIF(E7,F7,"md")=0,"", IF(DATEDIF(E7,F7,"md")=1,DATEDIF(E7,F7,"md")&" day", DATEDIF(E7,F7,"md")&" days"))

_ExcelTips_는 비용 효율적인 Microsoft Excel 교육을위한 소스입니다.

이 팁 (2184)은 Microsoft Excel 97, 2000, 2002 및 2003에 적용됩니다. Excel (Excel 2007 이상)의 리본 인터페이스에 대한이 팁의 버전은 다음에서 찾을 수 있습니다.

link : / excelribbon-Elapsed_Days_as_Years_Months_and_Days [Elapsed Days as Years, Months and Days].