다음과 같은 Excel 시트가 있습니다.
- A열: 주 번호
- Col B: 날짜(작업표 항목)
매주 근무일수를 알고 싶습니다. 따라서 주당 고유 날짜 항목 수가 필요합니다.
고정된 범위에 대해 이를 처리하는 수식(배열이 아닌 배열)을 찾았지만 결과를 다른 열(주당 숫자)에 표시하고 싶습니다.
아래 예제 데이터 세트의 결과는 다음과 같습니다(콜론은 명확성을 위해 사용됨).
14: 2
15: 3
17: 6
20: 2
21: 3
이것이 소스 데이터인 경우:
14: 4/04/2012
14: 4/04/2012
15: 10/04/2012
15: 10/04/2012
15: 11/04/2012
17: 26/04/2012
17: 26/04/2012
17: 26/04/2012
17: 26/04/2012
17: 27/04/2012
17: 27/04/2012
20: 14/05/2012
20: 14/05/2012
21: 23/05/2012
21: 23/05/2012
21: 25/05/2012
답변1
항목 수를 계산하려면 =countif(A:B,D1)
주 번호가 셀 D1에 있고 항목 목록이 열 A와 B에 있다고 가정합니다.
또 다른 옵션은 주 번호를 행 레이블로, 항목 수를 데이터로 사용하여 피벗 테이블을 만드는 것입니다. 이렇게 하면 빠르게 업데이트할 수 있는 좋은 요약이 제공됩니다.
답변2
수식으로 완전히 수행하는 것이 가능합니다. 약간의 간접 주소 지정과 원본 데이터에 따른 별도의 작업 열 1개(명확성을 위해 2개로 만들겠습니다), 결과 테이블에 추가 열 3개가 필요합니다.
일부 헤더를 허용하기 위해 실제 데이터가 행 3에서 시작한다고 가정하겠습니다. ;
미국 로케일에서는 기본값이 아닌 인수 분리에 사용하겠습니다 .날짜가 정렬되어 있다고 가정하지 않겠습니다.. 이 가정을 사용하면 솔루션이 더 간단해집니다.
- 셀 H2(입력 행 수):
=COUNT(A3:A1048576)
- 셀 C3(동적 조회 범위): 없음
- 셀 C4:C1000:
=ADDRESS(ROW(A$3);COLUMN(A$3)) & ":" & ADDRESS(ROW(A3);COLUMN(A3))
- 셀 D3(고유함):
TRUE
- 셀 D4:D1000:
=COUNTIF(INDIRECT(C4);A4)=0
- 셀 E3(고유 항목 번호):
1
- 셀 E4:E1000:
=IF(D4;E3+1;E3)
- 셀 I2(발견된 고유 수):
=OFFSET(E3;H2-1;0)
- 셀 J2(요일 범위):
=ADDRESS(ROW(A3);COLUMN(A3);4) & ":" & ADDRESS(ROW(A3)-1+$H$2;COLUMN(A3);4)
- 셀 K2(고유한 평일 범위의 Nr):
=ADDRESS(ROW(E3);COLUMN(E3);4) & ":" & ADDRESS(ROW(E3)-1+$H$2;COLUMN(E3);4)
- 셀 H5(카운터):
1
- 셀 H6:H100
=H5+1
- 셀 I5:I100(위치):
=MATCH(H5;INDIRECT($K$2);0)
- 셀 J5:J100(주일):
=OFFSET($A$3;I5-1;0)
- 셀 K5:K100(개수):
=COUNTIF(INDIRECT($J$2);J5)
최종 결과는 K5:K100 범위에 있습니다.
간접 수식으로 작업하더라도 아무 곳에나 열을 삽입하거나 G:G의 F:F 열을 삭제하면 해결 방법이 작동합니다. 데이터가 포함된 열을 함께 유지하는 한 셀을 이동할 수도 있습니다.
모든 것을 하나의 워크시트에 보관하는 것이 중요합니다. H4:K100 테이블을 다른 워크시트로 이동하려면 J2 및 K2 셀의 주소를 수정하여 워크시트 이름을 포함해야 합니다.
답변3
피벗 테이블이 가장 쉬울 수도 있습니다.