Excel 배열 작업: 이 배열을 얻는 방법은 무엇입니까?

Excel 배열 작업: 이 배열을 얻는 방법은 무엇입니까?

다음과 같은 두 개의 배열이 있습니다.

 {a,b,c}

 {d,e,f}

이 배열을 어떻게 구하나요?

 {a*d,b*e,c*f}

예를 들어 한 배열은 {0,1,1}이고 다른 배열은 {255,122,0}입니다. 이 배열이 필요합니다.

{0,122,0}

정말 간단합니다.

이는 이 스레드와 관련이 있습니다.Excel: 필터링된 범위에서 0이 아니고 비어 있지 않은 마지막 셀 조회

이 공식 SUBTOTAL(2,OFFSET(R5,ROW(R5:R200)-ROW(R5),0))은 필터링된 데이터(표시)에 대해 1을 제공하고 필터링된 데이터(보이지 않음)에 대해 0을 제공한다는 것을 발견했습니다. 따라서 이것은 0 또는 1의 196개 요소로 구성된 배열입니다.

또 다른 배열인 OFFSET(R5,ROW(R5:R200)-ROW(R5),0)은 기본적으로 R5:R200입니다.

한 배열의 각 요소를 다른 배열의 해당 요소와 다중화하고 새 배열을 얻을 수 있는 경우 다음 LOOKUP은 필터링된 데이터에서 0이 아닌 마지막 숫자를 제공합니다.

=LOOKUP(2,1/NEW-ARRAY,R5:R200)

이는 SUBTOTAL 배열이 필터링된(표시되는) 각 셀에 대해 1을 제공하고 여기에 셀 내용을 곱할 때 내용이 0인 표시되는 셀이 새 배열에서 0이 되기 때문입니다({0,1,1의 두 번째 1) } 곱하기 0({255,122,0})). 따라서 마지막 0이 아닌 셀은 LOOKUP에 의해 선택됩니다.

답변1

@Jeeped가 언급한 대로 INDEX를 사용하세요.

INDEX({0,1,1}*{255,122,0},0)

그러면 배열 {0,122,0}이 다른 수식으로 반환됩니다.

보시다시피 숫자를 합하면 다음과 같습니다.

=SUM(INDEX({0,1,1}*{255,122,0},0))

122를 반환합니다.

답변2

이 공식은 원하는 형식의 배열 요소를 가져올 수 있습니다.

여기에 이미지 설명을 입력하세요

  • 셀에 이 수식을 입력 A44하고 필요할 때까지 바로 입력하세요.

=A42*D42

필요에 따라 수식의 셀 참조를 조정합니다.

답변3

A1, B1, C1 셀에 각각 1, 2, 3이 있다고 가정해 보겠습니다. 그리고 셀 A2, B3, C2에는 각각 4, 5, 6이 있습니다.

A3 셀에 다음 수식을 입력할 수 있습니다.

= A1:C1 * A2:C2

그리고 각각 A3, B3 및 C3으로 유출되는 {4,10,18} 배열을 생성합니다.

관련 정보