출퇴근 시간 구하기 공식
지원 버전 자세히 보기
같은 날 출퇴근 기록이 여러 건일 때 첫 출근과 마지막 퇴근 시간을 구하는 공식입니다. MINIFS 함수와 MAXIFS 함수 또는 배열 수식으로 계산할 수 있습니다.
인수 설명
01MINIFS + MAXIFS 공식 (엑셀 2019 이후)
출근시간 = IF ( COUNTIFS ( 날짜범위, 날짜, 이름범위, 이름, 출퇴근범위, "출근" )=0, "기록없음", MINIFS ( 시간범위, 날짜범위, 날짜, 이름범위, 이름, 출퇴근범위, "출근" ) )
퇴근시간 = IF ( COUNTIFS ( 날짜범위, 날짜, 이름범위, 이름, 출퇴근범위, "퇴근" )=0, "기록없음", MAXIFS ( 시간범위, 날짜범위, 날짜, 이름범위, 이름, 출퇴근범위, "퇴근" ) )
인수 설명 자세히 보기(인수를 클릭하면 해당 영역만 강조됩니다. 여러 개를 함께 켜고 끌 수 있습니다.)
02MIN + MAX 배열 수식 (엑셀 2016 이하)
{출근시간 = MIN ( IF ( --( 날짜범위=날짜 ) * ( 이름범위=이름 ) * ( 출퇴근범위="출근" ), 시간범위, "" ) )}
{퇴근시간 = MAX ( IF ( --( 날짜범위=날짜 ) * ( 이름범위=이름 ) * ( 출퇴근범위="퇴근" ), 시간범위, "" ) )}
인수 설명 자세히 보기
동작 원리
01MINIFS + MAXIFS 공식 (엑셀 2019 이후)
COUNTIFS 함수로 출근 기록 존재 여부를 확인하고, MINIFS 함수는 첫 출근 시간을, MAXIFS 함수는 마지막 퇴근 시간을 계산합니다.
엑셀 2019 이후 공식의 예제 시트에서 G2 셀이 00:00을 반환하는 계산 과정입니다. 단계마다 강조된 부분이 어떻게 계산되는지 살펴보세요.
COUNTIFS 함수가 출근 기록 개수를 확인합니다
COUNTIFS 함수는 조회 날짜, 이름, 출근 구분을 모두 만족하는 기록을 셉니다. MINIFS 함수는 조건에 맞는 기록이 없어도 00:00을 반환하므로, 자정 출근과 구분하려면 개수를 먼저 확인해야 합니다.
=COUNTIFS ( A2:A8, E2, B2:B8, F2, C2:C8, "출근" )
= 2
00:00과 09:00의 출근 기록 두 건입니다. MINIFS 함수가 첫 출근 시간을 찾습니다
MINIFS 함수는 세 조건을 만족하는 출근 시간 중 가장 이른 값을 계산합니다.
=MINIFS ( D2:D8, A2:A8, E2, B2:B8, F2, C2:C8, "출근" )
= 00:00
두 출근 기록 중 가장 이른 시각입니다. IF 함수가 기록 여부에 따라 결과를 반환합니다
출근 기록 개수 2가 0이 아니므로 IF 함수는 MINIFS 함수가 계산한 00:00을 반환합니다. 조건을 만족하는 기록이 없으면 "기록없음"을 반환합니다.
=IF ( COUNTIFS ( A2:A8, E2, B2:B8, F2, C2:C8, "출근" )=0, "기록없음", MINIFS ( D2:D8, A2:A8, E2, B2:B8, F2, C2:C8, "출근" ) )
= 00:00
G2 셀에 표시되는 자정 출근 시각입니다. 02MIN + MAX 배열 수식 (엑셀 2016 이하)
IF 함수는 조건을 만족하는 시간만 배열로 남기고, MIN 함수와 MAX 함수는 각각 첫 출근과 마지막 퇴근 시간을 계산합니다.
이전 버전 배열수식의 예제 시트에서 G2 셀이 00:00을 반환하는 계산 과정입니다. 단계마다 강조된 부분이 어떻게 계산되는지 살펴보세요.
IF 함수가 조건에 맞는 출근 시간만 남깁니다
날짜, 이름, 출근 구분을 모두 만족하는 행에서는 시간값을 반환하고 나머지 행에서는 빈 문자열을 반환합니다.
=IF ( --( A2:A8=E2 ) * ( B2:B8=F2 ) * ( C2:C8="출근" ), D2:D8, "" )
= {"00:00";"";"09:00";"";"";"";""}
00:00과 09:00의 출근 시각만 남은 배열입니다. MIN 함수가 배열의 최솟값을 반환합니다
MIN 함수는 남은 두 시각 중 00:00을 반환합니다. H2 셀은 같은 흐름으로 퇴근 시각 06:00과 12:00만 남긴 뒤 MAX 함수가 12:00을 반환합니다.
{=MIN ( IF ( --( A2:A8=E2 ) * ( B2:B8=F2 ) * ( C2:C8="출근" ), D2:D8, "" ) )}
= 00:00
첫 출근 시각입니다.