중첩된 크리에이티브 키트에 포함된 모든 기본 에셋의 수량을 계산하려면 직접 포함된 에셋과 키트 구성품을 분리하고, 각 중첩 단계마다 수량을 곱한 다음 결과를 더하세요. 이 Mac용 Excel 안내에서는 전체 요구량 행렬과 정확한 에셋 및 키트 조회표를 만듭니다.
이 작업의 목표는 키트에 다른 키트가 포함되어 있을 때 키트 하나 또는 선택한 수량의 키트 묶음에 필요한 각 그래픽의 인스턴스 수를 구하는 것입니다. 아래의 모든 레이블과 수량은 예시용입니다. 이 계산은 그래픽 인스턴스 수를 세며, 재사용 가능한 원본 파일의 중복은 제거하지 않습니다.
이 작업 흐름을 지원하는 Mac용 Excel 버전은 무엇인가요?
Microsoft 365용 Mac용 Excel, Mac용 Excel 2024 또는 Mac용 Excel 2021을 사용하세요. Microsoft는 여기에서 사용하는 행렬 및 조회 함수에 대해 이 버전들을 지원 대상으로 명시합니다. 또한 Microsoft는 Mac용 Excel 2021의 동적 배열도 명시적으로 문서화합니다. 이 안내에서는 Enter 키로 확정하는 일반 워크시트 범위와 수식을 사용합니다. MMULT 함수, INDEX 함수, Mac용 Excel 2021의 새로운 기능.
동적 배열 수식은 이웃 셀을 자동으로 채우는 방식으로 결과를 펼칩니다. 이 동작을 스필이라고 합니다. 각 배열 수식은 지정된 시작 셀에만 입력하고, 출력 범위는 비워 두세요. 스필 배열 수식은 표 안에서 지원되지 않는다고 Microsoft가 문서화했으므로 이러한 수식은 Excel 표 밖에 두세요. 동적 배열 수식 및 스필 배열 동작.
계산 예시는 결정론적인 소규모 Python 계산으로 확인했습니다. 수식은 Excel 데스크톱 애플리케이션에서 실행하지 않았습니다.
직접 에셋과 중첩 키트는 어떻게 기록해야 하나요?
빈 워크시트에서 시작하세요. 두 개의 입력 행렬을 만듭니다. 하나는 각 키트에 직접 배치된 기본 그래픽을 나타내고, 다른 하나는 다른 키트 안에 직접 들어 있는 키트를 나타냅니다. 이 입력을 분리하면 이미 확장된 수량이 다시 계산되는 일을 막을 수 있습니다.
직접 기본 에셋 행렬 입력하기
이 탭으로 구분된 블록을 A1에 붙여 넣으세요. 숫자 영역인 B2:D5에는 에셋 행 4개와 키트 열 3개가 있습니다.
에셋 DotKit StripeKit StudioKit
Dot 2 1 0
Arc 1 0 2
Grid 0 3 1
Tile 0 1 0
각 열은 키트 하나에 직접 들어 있는 그래픽의 구성을 나타냅니다. DotKit 하나에는 Dot 인스턴스 2개와 Arc 1개가 직접 들어 있습니다. StripeKit 하나에는 Dot 1개, Grid 3개, Tile 1개가 직접 들어 있습니다. 중첩된 키트는 별도로 기록합니다.
구성 요소가 없는 경우 숫자 0을 입력하세요. Microsoft는 MMULT의 입력값이 숫자여야 한다고 명시합니다. 빈 셀이나 텍스트가 있으면 #VALUE!가 발생할 수 있습니다. 함수에 전달하는 숫자 범위에는 레이블을 포함하지 마세요. MMULT 함수.
키트 안의 키트 행렬 입력하기
다음 블록을 A7에 붙여 넣으세요. 여기서 행은 구성 요소 키트를, 열은 상위 키트를 나타냅니다. 숫자로 된 중첩 행렬은 B8:D10에 있습니다.
구성 요소 키트 DotKit StripeKit StudioKit
DotKit 0 2 1
StripeKit 0 0 3
StudioKit 0 0 0
이 행렬은 다음 레시피를 나타냅니다.
- DotKit에는 다른 키트가 들어 있지 않습니다.
- StripeKit에는 DotKit 2개가 들어 있습니다.
- StudioKit에는 DotKit 1개와 StripeKit 3개가 들어 있습니다.
직접 포함된 구성 요소만 기록하세요. StudioKit에 직접 들어 있는 DotKit 1개는 D8에 기록합니다. StripeKit 3개 안에 있는 DotKit 6개는 계산해야 합니다. D8에 7을 입력하면 이 6개를 두 번 세게 됩니다.
B1:D1, B7:D7, A8:A10에서 키트 순서를 정확히 동일하게 유지하세요. DotKit, StripeKit, StudioKit 순입니다. 행렬 곱셈은 위치를 기준으로 계산하므로 레이블이 같더라도 입력 순서가 다르면 결과가 바로잡히지 않습니다.
이 예시는 0 이상의 정수 수량과 결국 기본 에셋에 도달하는 레시피를 가정합니다. 어떤 키트도 다른 키트들을 거쳐 자기 자신을 포함할 수 없습니다.
전체 요구량 행렬은 어떻게 계산하나요?
아래 설명에서 직접 에셋 행렬을 B, 중첩 행렬을 N로 표기합니다. 이는 수학적 표기이며, 통합 문서에서 정의해야 하는 이름은 아닙니다. B에 N를 곱하면 키트 포함 관계를 한 단계 거쳐 추가되는 에셋이 계산됩니다. 이 결과에 N을 곱하면 포함 단계를 하나 더 추가합니다.
이 세 키트의 가장 깊은 경로는 StudioKit 안에 StripeKit이 있고 그 안에 DotKit이 있는 경우입니다. 따라서 전체 행렬은 직접 에셋, 중첩 한 단계 아래의 에셋, 중첩 두 단계 아래의 에셋을 더한 값입니다.
전체 요구량 = B + BN + BN²
위 첨자는 행렬을 반복해서 곱한다는 뜻입니다. Excel에서는 MMULT을 사용해 계산하세요. 범위에 일반 ^2 연산자를 적용하면 각 항목을 개별적으로 제곱합니다.
각 중첩 단계의 기여량 계산하기
이 수식을 G2에 입력한 뒤 Enter 키를 누르세요. G2:I5에 중첩 경로 한 단계를 거쳐 도달하는 에셋이 채워집니다.
=MMULT($B$2:$D$5,$B$8:$D$10)
다음 수식을 L2에 입력하세요. L2:N5에 중첩 경로 두 단계를 거쳐 도달하는 에셋이 채워집니다.
=MMULT(G2:I5,$B$8:$D$10)
행렬의 크기를 보면 곱셈 순서를 알 수 있습니다. 4×3 에셋 행렬에 3×3 중첩 행렬을 곱하면 다시 4×3 에셋 행렬이 나옵니다. Microsoft 문서에 따르면 첫 번째 배열의 열 개수는 두 번째 배열의 행 개수와 같아야 합니다. MMULT 함수.
중간 결과를 확인하려면 G2:I5의 StudioKit 열에 에셋 순서 Dot, Arc, Grid, Tile에 따라 5, 1, 9, 3가 있어야 합니다. L2:N5의 StudioKit 열에는 12, 6, 0, 0이 있어야 합니다.
직접 및 중첩 기여량 더하기
Q1:S1에 DotKit, StripeKit, StudioKit을 입력하세요. P2:P5에는 Dot, Arc, Grid, Tile을 아래로 입력하세요. 그런 다음 이 수식을 Q2에 입력합니다.
=$B$2:$D$5+G2:I5+L2:N5
Q2:S5에 완성된 행렬이 다음과 같이 표시되어야 합니다.
| 기본 에셋 | DotKit | StripeKit | StudioKit |
|---|---|---|---|
| Dot | 2 | 5 | 17 |
| Arc | 1 | 2 | 9 |
| Grid | 0 | 3 | 10 |
| Tile | 0 | 1 | 3 |
StudioKit의 Dot 수량을 직접 확인해 보세요. 직접 포함된 Dot은 없고, 직접 포함된 DotKit에서 2개를 얻으며, Dot을 각각 5개씩 포함하는 StripeKit 3개에서 15개를 얻습니다. 합계는 17개입니다. 이 확인 방법은 공유된 하위 키트를 거치는 경로를 포함해 동일한 에셋으로 이어지는 모든 경로를 따라갑니다.
중첩 단계가 빠지지 않았다는 것을 어떻게 확인하나요?
그럴듯한 합계만으로는 확장이 완전하다고 볼 수 없습니다. 중첩 행렬 자체를 사용해 포함 단계가 더 남아 있는지 확인하세요.
두 단계 중첩 행렬을 G8:I10에 계산하려면 이 수식을 G8에 입력하세요.
=MMULT($B$8:$D$10,$B$8:$D$10)
그런 다음 세 단계 중첩 행렬을 L8:N10에 계산하려면 이 수식을 L8에 입력하세요.
=MMULT(G8:I10,$B$8:$D$10)
제공된 데이터에서는 G8:I10에 0이 아닌 항목이 하나 있습니다. StudioKit 안의 StripeKit을 거쳐 도달하는 DotKit 6개입니다. L8:N10의 모든 항목은 0입니다. 세 단계 경로는 없으므로 이미 포함된 두 단계의 중첩 이후에는 기여량이 더해지지 않습니다.
이 중단 기준은 행렬 모델에서 도출됩니다. 수량이 음수가 아닌 경우 다음 중첩 행렬이 모두 0이면 그보다 긴 중첩 경로도 모두 존재하지 않습니다. 특정 에셋에 기여량이 더 추가되는지만 확인하는 것보다 확실한 방법입니다.
서로 다른 키트가 k개이고 포함 순환이 없는 더 큰 통합 문서에서는 가장 긴 경로가 최대 k−1단계입니다. 각 에셋 기여 행렬에 중첩 행렬을 계속 곱하고 결과를 더하세요. 다음 중첩 거듭제곱의 모든 항목이 0이 될 때까지 반복합니다. 위의 세 항을 더하는 수식은 이 예시에 완전하지만, 추가 키트로 더 깊은 경로가 생기면 확장해야 합니다.
키트를 단순한 순서에서 중첩이 많은 순서로 정렬하면 확인하기 쉽습니다. 제공된 중첩 행렬에서는 0이 아닌 항목이 모두 대각선 위에 있습니다. 대각선에 양수가 있으면 키트가 직접 자기 자신을 포함한다는 뜻입니다. 더 긴 경로를 거쳐 시작 키트로 돌아오는 경우, 유한 확장을 사용하기 전에 레시피를 수정하세요.
에셋과 키트 하나의 수량은 어떻게 조회하나요?
W1에는 에셋, X1에는 키트, Y1에는 수량을 입력하세요. W2에는 Arc를, X2에는 StudioKit을 입력합니다. Y2에는 다음을 입력하세요.
=INDEX($Q$2:$S$5,MATCH(W2,$P$2:$P$5,0),MATCH(X2,$Q$1:$S$1,0))
결과는 9여야 합니다. 첫 번째 MATCH은 에셋 행을 찾고, 두 번째는 키트 열을 찾습니다. INDEX은 해당 행과 열이 교차하는 값을 반환합니다. Microsoft 문서에서는 이 행 및 열 선택 동작을 설명하고, 정렬된 레이블이 없어도 MATCH에 0를 사용하면 정확히 일치하는 값을 찾는다고 확인합니다. INDEX 함수, MATCH 함수.
각 축에서 레이블을 고유하게 유지하세요. 정확한 MATCH는 첫 번째로 일치하는 위치를 반환하기 때문입니다. 레이블을 찾지 못하면 #N/A가 표시됩니다. 오류를 0으로 바꾸지 말고 이름을 확인하는 동안 그대로 두세요. 요구량 행렬에서 0은 이미 의미 있는 값입니다. MATCH 함수.
여러 키트 묶음은 어떻게 계산하나요?
Q7:S7에 DotKit, StripeKit, StudioKit을 입력하세요. Q8:S8에는 2, 1, 3을 입력합니다. 이는 각각 별도로 요청된 수량으로, DotKit 2개, StripeKit 1개, StudioKit 3개입니다.
U1에 총 인스턴스 수를 입력한 다음, 이 수식을 U2에 입력하세요.
=MMULT($Q$2:$S$5,TRANSPOSE($Q$8:$S$8))
TRANSPOSE은 가로로 된 3개 키트의 수요 행을 세로 열로 바꿉니다. 곱셈을 수행하면 기본 에셋마다 하나씩 합계가 계산되어 U2:U5에 채워집니다. Microsoft 문서에 따르면 TRANSPOSE은 행과 열을 맞바꿉니다. TRANSPOSE 함수.
| 기본 에셋 | 계산식 | 총 인스턴스 수 |
|---|---|---|
| Dot | 2×2 + 5×1 + 17×3 |
60 |
| Arc | 1×2 + 2×1 + 9×3 |
31 |
| Grid | 0×2 + 3×1 + 10×3 |
33 |
| Tile | 0×2 + 1×1 + 3×3 |
10 |
내부 구성에 필요한 DotKit과 StripeKit을 이 수요 행에 더하지 마세요. 전체 행렬에 해당 키트의 내용이 이미 포함되어 있습니다. 수요 항목을 추가하는 것은 별도로 요청된 추가 키트를 의미합니다.
결과가 잘못된 것처럼 보일 때는 무엇을 확인해야 하나요?
수식을 바꾸기 전에 다음 항목을 확인하세요.
- 배열에
#SPILL!이 표시됨: 출력 범위에 기존 항목이나 병합된 셀이 있는지 확인하세요. 방해되는 항목을 옮기거나 수식 위치를 바꾸세요. Microsoft 문서에서는 두 조건 모두 스필을 막는 원인으로 설명합니다. #SPILL! 오류를 해결하는 방법. - 곱셈 결과가
#VALUE!로 표시됨: 입력에 빈 셀, 텍스트, 포함된 머리글이 있는지 또는 입력 차원이 맞지 않는지 확인하세요. MMULT 함수. - 합계가 너무 높음: 직접 행렬에 확장된 하위 키트의 내용이 이미 포함되어 있는지 또는 내부 키트 수량을 배치 수요에 더했는지 확인하세요.
- 합계가 너무 낮음: 다음 중첩 거듭제곱을 확인하세요. 결과가 0이 아니면 확장 단계가 더 필요할 수 있습니다.
- 숫자는 그럴듯하지만 제목이 잘못됨: 두 입력 행렬과 출력 머리글의 키트 순서를 비교하세요.
통합 문서를 확장할 때는 영향을 받는 모든 입력 범위, 보조 계산, 출력 머리글, 조회 범위, 수요 범위를 업데이트하세요. 이 수식은 고정된 주소를 사용하므로 기존 입력 옆에 새 키트를 입력해도 자동으로 반영되지 않습니다.
직접 레시피는 편집 가능한 입력값으로 유지하고, 계산 옆에 중첩 깊이 확인을 두세요. 구조를 바꿀 때마다 에셋 경로 하나를 골라 전체 경로를 따라가며 검산하세요. 이러한 확인을 거치면 완성된 행렬에서 기록된 동일한 레시피를 바탕으로 개별 키트 조회와 배치 합계를 모두 구할 수 있습니다.
출처
- MMULT 함수 — Microsoft 지원.
- Mac용 Excel 2021의 새로운 기능 — Microsoft 지원.
- 동적 배열 수식 및 스필 배열 동작 — Microsoft 지원.
- INDEX 함수 — Microsoft 지원.
- MATCH 함수 — Microsoft 지원.
- TRANSPOSE 함수 — Microsoft 지원.
- #SPILL! 오류를 해결하는 방법 — Microsoft 지원.