
컴퓨터에 로그인하는 데 소요된 시간을 나타내는 Excel 스프레드시트에 이 정보가 있습니다.
logins time of day amount of time logged in (h:mm)
------ ----------- -------------------------------
login 03:21
logout 05:03 1:42
login 05:47
logout 06:26 0:39
그리고 나는 이것을 이것으로 바꾸고 싶습니다 ..
time of day amount of time logged in (mins)
------------- -------------------------------
03:00 - 04:00 39
04:00 - 05:00 60
05:00 - 06:00 16
06:00 - 07:00 26
매우 복잡한 것 같고 엑셀 수식 때문에 엉켜버리고 있어요.. 누구든지 수식을 아는 사람이 있으면 좋을 것 같아요!
답변1
여기에 이 작업을 수행하는 한 가지 방법이 있습니다. 매우 우아하지는 않지만 누군가가 이 작업을 수행하는 더 짧은 방법을 가지고 있고 이 추악한 방법을 본 후에 나타날 수 있습니다. 아마도 여기에 내 시도가 있습니다. 다음과 독점적으로 작동합니다 MS365 Version Of Excel
.
• 셀에 사용되는 수식E2
=LET(
_Data, A2:B5,
_First, TAKE(_Data,1,-1),
_Adjustments, IF(TAKE(_Data,1,1)="Logout",
VSTACK(_First,MROUND(_First,"1:00"),DROP(_Data,1,1)),
DROP(_Data,,1)),
_H2M, 1440,
_TFormat, "hh:mm",
_TimeFrame, WRAPROWS(UNIQUE(_Adjustments,,1),2,CEILING(MAX(_Adjustments),"1:00:00"))*_H2M,
_TSequence, TOCOL(DROP(REDUCE("",SEQUENCE(ROWS(_TimeFrame)),LAMBDA(_x,_y,
LET(_z,INDEX(_TimeFrame,_y,1),_w,INDEX(_TimeFrame,_y,2),
VSTACK(_x,SEQUENCE(,_w-_z,_z))))),1)/_H2M,2),
_Uniq, UNIQUE(HOUR(_TSequence))/24,
HSTACK(TEXT(_Uniq,_TFormat)&" - "&TEXT(_Uniq+1/24,_TFormat),
TOCOL(BYCOL(LOOKUP(_TSequence,_Uniq)*24=TOROW(_Uniq*24),LAMBDA(_b,SUM(--_b))))))
테스트 사례 1:
테스트 사례 2: