목록Row (35)
무지개타고
저번에 공백 일시를 구하는 것을 살펴봤는데 이번에는 그 반대인 겹치는 일시를 엑셀로 구해봤다. 간트 차트를 통해 어느 일시에 겹치는지 쉽게 파악되는데 이를 엑셀 수식으로 계산하면... 둘 다 배열수식이다. q4 (시작) =IF(OR(R3="", SUM(IF((MMULT( (TRANSPOSE(($C$3:$C$12-MIN($C$3:$C$12))*1440)
작성된 일정표에서 일정 사이사이에 공백인 시간이 있는지 공백 시간이 있다면 언제부터 언제까지 인지가 궁금한 경우에 이를 찾기 위한 엑셀 수식이다. 간트 차트가 시각적으로 나타내기 유용하니 엑셀로 간트 차트 만드는 방법은 알아서 검색해보기 바라고, 위에 그림에 나오듯 중간중간 일정이 빈 시간이 존재한다. 언제가 일정이 빈, 공백인지 시각적으로는 쉽게 눈에 띄는데 이걸 엑셀 수식으로 찾아내려면 이리저리 궁리를 많이 해야 한다. 가장 손쉬운 방법은 일정 목록에 "묶음"을 나누는 열을 추가하는 것이다. 참고로 여기서 "묶음"은 현재 셀이 이전 셀의 시작과 종료 시간에 위치하면 같은 묶음으로 분류했다. a3 =IF(SUMPRODUCT((C$2:C2$I4, MIN(IF($A$3:$A$12 =($I4+1), $C$3..
근무 시간 계산을 어떻게 했는지 떠오르지 않아 예전 글 찾아보다 좀 더 간편한 방법이 떠올라 개정판(?)을 올린다. 근무 시간을 직접 계산해본 경험이 있다면 계산에 고려사항이 많고 이래저래 복잡하다는 것을 알 텐데... 일단 시간들의 교집합을 찾는 방법으로 Max(0, Min(종료, 퇴근) - Max(시작, 출근)) 정도만 기억하고 시작하자. 참조1 표는 일상적으로 사용하는 표 양식으로 근무 시간은 언제부터 언제까지이고 그 사이 근무 시간에서 제하는 시간은 언제부터 언제까지인지 기재한다. 참조1 표를 참고해서 만든 수식은 주간시간1 이다. d17 (주간시간1, 배열수식) =IF(B17*C17>0, MIN($C$9,(B17>C17)+C17) -MAX($B$9,B17) -SUM( (TRANSPOSE($B$1..
오랜만에 쓰는 더하기 시리즈. 재밌는 질문이다. 질문을 대충 요약하면... 위에서 아래 방향으로 누적합을 구한다. 이때 누적합이 일정 값을 벗어나기 직전에 누적합을 멈추고 어떤 표시를 한다. 그리고 앞서 와 같이 누적합을 다시 진행하는데 이때는 시작 위치가 아래로 옮겨서 누적합을 구한다. 이거 어디서 많이 본 시추에이션인데~ 그래 더하기!!! 이를 정리하면 아래와 같다. 그래서 이리저리 궁리하니 아래처럼 수식이 만들어졌다. 처음에 의도하기는 조건을 만족할 때 해당 순번이 바로 표시되는 것을 생각했는데 수식을 만들다 보니 각각의 순번이 조건을 만족하는 전체 행 위치가 나왔다. (아래 그림에서 F 행렬이다.) 뭐 의도한 것과는 차이가 있지만 나쁘지 않아 보인다. c4 =IFERROR("순번"&MATCH(RO..
심심풀이로 만들어 봤는데 어디 써먹을 곳 없을까? 배열수식이므로 범위를 지정후 Ctrl, Shift, Enter 키를 동시에 누른다. b2:m13 (12x12 행렬) =MOD(ROW(A1:A12)+TRANSPOSE(ROW(A1:A12))+ROWS(A1:A12)-2,ROWS(A1:A12))+1
동네에 벚꽃도 목련도 이쁘게 피고 계절은 좋다만... 어느 재벌기업 1분기 영업이익이 8조 원을 넘었다는 기사에 반응은 "그거 중소기업 피 빨아먹은 거야~" 바로 나온다. 제목에 "따라지"를 보듯 언제 한 번 다룬 내용인데 기존 부서원을 야유회(?) 팀별로 배정하는 것을 생각해 보자. 부서는 가, 나, 다, 라이고 부서별 인원은 서로 다르다. 야유회(?) 팀은 A, B, C이고 야유회(?) 팀별 배정 인원은 서로 다르다. 이정도로는 이전에 다룬 것과 다를 게 없고, 부서별로 야유회(?) 팀 인원을 할당하는 조건을 추가해 봤다. 부서원 각각에 대해 무작위로 야유회(?) 팀을 배치하는데 복습차원에서 이전에 다룬 방법도 같이 적용해 보면... 참고로 모두 배열수식이므로 입력시 Ctrl, Shift, Enter..
'따라지'라는 말을 오랫만에 쓰는데, 어릴적 동네에 다니는 버스 번호중에 235가 있었고, 235-1 이 있었다. 이 두 버스의 번호는 비슷해 보이지만 방향은 거의 반대 방향인 노선이었고, 235-1을 우린 235-따라지 라고 부르곤 했다. 서울에 홍수 날 정도로 비가 쏟아지던 어느날 235를 탔는데 엥? 여기가 어디여? 우산들고 우왕좌왕하는 사이에 앞자리 숫자만 보고 235인줄 알았건만 실상은 따라지... 지난 번에 선입선출을 알아봤다. 여기에 품목이라는 변수를 집어넣어 금액을 구하는 따라지를 검토해보자. 정수용(?) 배열수식인 금액1. g3 셀 (금액1) =IF(OR($F3=0,SUMIF($B$3:$B3,$B3,$C$3:$C3)TRANSPOSE(ROW($C$3:$C3))),($B$3:$B3=$B3)*..
익히 해오던 수식 갖고 앞뒤만 조금 조정해주면 되는 것이었는데 이를 못해서 십수년을 숙제로 담고 살았다. 에휴... 선입선출(FIFO)을 살펴보자. 단가 = 금액 ÷ 수량 인데, 입고량과 출고량이 딱딱 맞으면 좋으련만 현실은 그게 아닌지라. f3 셀(금액1) =IF(OR($E3=0,SUM($B$3:$B3)TRANSPOSE(ROW($B$3:$B3))),$B$3:$B3)=TRANSPOSE(ROW($B$3:$B3))),$B$3:$B3),MMULT(1*(ROW($B$3:$B3)>=TRANSPOSE(ROW($B$3:$B3))),$B$3:$B3),SUM($E$3:$E3))-IF(SUM($E$3:$E3)>MMULT(1*(ROW($B$3:$B3)>TRANSPOSE(ROW($B$3:$B3))),$B$3:$B3),MMUL..