>source

나는단조롭게 하다배열의 데이터를 평면화하는 LAMBDA 함수. 이것은 잘 작동하지만 인접하지 않은 범위를 사용할 수 있도록 다른 배열 인수를 통합하고 싶습니다.

제 예에서 범위답1:B6에 보관되어 있습니다정렬평면화된 데이터를 반환합니다.

어떻게 포함할 수 있습니까?어레이2수용하는 주장D1:D6추가 범위로?

공식:

FLATTEN=
LAMBDA(array,
LET(
    rows,ROWS(array),
    columns,COLUMNS(array),
    sequence,SEQUENCE(rows*columns),
    quotient,QUOTIENT(sequence-1,columns)+1,
    mod,MOD(sequence-1,columns)+1,
    INDEX(IF(array="","",array),quotient,mod)
    )
)

  • 답변 # 1

    실제로 만들 수 없습니다.람다()평면화에 포함할 배열의 알 수 없는 수(미리)가 있습니다. 여러 열의 배열이 있다는 사실은 "어려움"에 기여할 것입니다. 이 특정 방식으로 여러 열을 '평면화'하는 한 가지 방법은 다음과 같습니다.

    공식G1:

    =LET(X,CHOOSE({1,2,3},A1:A6,B1:B6,D1:D6),Y,COLUMNS(X),Z,SEQUENCE(COUNTA(X)),INDEX(X,CEILING(Z/Y,1),MOD(Z-1,Y)+1))
    

  • 답변 # 2

    속임수지만:

    FLATTEN=
    LAMBDA(array,
    LET(
        rows,ROWS(array),
        columns,COLUMNS(array),
        sequence,SEQUENCE(rows*columns),
        quotient,QUOTIENT(sequence-1,columns)+1,
        mod,MOD(sequence-1,columns)+1,
        unpiv, INDEX(array,quotient,mod),
        FILTER(unpiv, unpiv<>"")
        )
    )
    

    배열이 입력으로 A1:D6으로 확장된 곳입니다.

    당신의 노력에 감사드립니다. 그러나 그것은 실제로 약간의 임시방편입니다. 추가 배열 인수를 갖는 방법을 찾아야 합니다.

    Statto2022-02-14 14:30:29
  • 이전 json : React 네이티브 API 사용
  • 다음 random : Ansible의 jinja에서 임의의 문자열을 생성하고 사용하는 방법