헤더를 값과 일치시키는 공식

헤더를 값과 일치시키는 공식

이것은 설명하기 어려운 질문이므로 양해해 주시기 바랍니다.

한 시트에는 여러 개의 셀이 있는 열이 있습니다. 그 중 일부는 비어 있고 일부는 단일 값을 가지며 일부는 둘 이상의 값을 가지고 있습니다. 다른 시트에는 적절한 집과 함께 해당 가치 목록이 있습니다. 제가 작업하는 작업의 예는 다음과 같습니다.

시트1:

C1: Team Names
C2: crimson-tide, bulldogs
C3: bulldogs
C4: (blank)
C5: canucks

시트2:

A1: Football          B1: Basketball        C1: Hockey
A2: crimson-tide      B2: celtics           C2: maple-leafs
A3: bulldogs          B3: mavericks         C3: oilers
A4: tigers            B4: gonzaga-bulldogs  C4: canucks
A5: longhorns         B5: warriors          C5: bruins

Sheet1의 예상 출력:

D2: Football
D3: Football
D4: No Sport Found
D5: Hockey

실제 출력:

D2: (blank)
D3: FootballBasketBall
D4: (blank)
D5: Hockey

Sheet1!C2:C5를 반복하려고 하며 Sheet2!A2:C5와 일치하는 모든 값은 Sheet2!A1:C1의 적절한 헤더를 표시합니다. 예를 들어, Sheet2!A1의 축구 헤더 아래에 Crimson-tide 또는 Bulldogs가 있으므로 Sheet1!C2는 'Football'이라고 표시됩니다.

추가하는 것이 중요하거나 중요하지 않을 수 있습니다. Sheet1!C의 값에는 다른 헤더에 있을 팀이 없습니다. 예를 들어 Crimson-tide는 Sheet2의 축구 헤더 아래에만 있고 축구 및 농구 헤더 아래에는 없습니다. 지금까지는 C열의 팀이 Sheet2의 팀과 일치하는 경우에만 True/False 결과를 표시할 수 있었습니다. 적절한 헤더를 표시하는 방법을 알 수 없습니다. 도와주세요!

답변1

셀에 다음 수식을 입력해 보세요.D2

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


=LET(
     _S2Sports, Sheet2!A$2:C$5,
     _Sports, TOCOL(IFS(_S2Sports<>"",Sheet2!A$1:C$1),2,1),
     _Teams, TOCOL(_S2Sports,1,1),
     _Match, XLOOKUP(TEXTSPLIT(C2,,", "),_Teams,_Sports,"No Team Found"),
     IFERROR(TEXTJOIN("|",1,UNIQUE(_Match)),"No Sport Found"))

단일 동적 배열 수식 사용:

=LET(
     _S2Sports, Sheet2!A$2:C$5,
     _Sports, TOCOL(IFS(_S2Sports<>"",Sheet2!A$1:C$1),2,1),
     _Teams, TOCOL(_S2Sports,1,1),
     BYROW(C2:C12, LAMBDA(x, LET(_Match, XLOOKUP(TEXTSPLIT(x,,", "),_Teams,_Sports,"No Team Found"),
     IFERROR(TEXTJOIN("|",1,UNIQUE(_Match)),"No Sport Found")))))

TOCOL()& 에 대한 액세스 권한이 없는 경우 TEXTSPLIT():

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


=LET(
     _Sports, Sheet2!$A$2:$C$5,
     _Found, N(ISNUMBER(SEARCH(", "&_Sports&", ",", "&$C2&", "))),
     _MatrixCal, MMULT(SEQUENCE(,ROWS(_Sports))^0,_Found),
     _Output, FILTER(Sheet2!$A$1:$C$1,_MatrixCal,"No Team Found"),
     IF(C2="","No Sport Found",TEXTJOIN("|",,_Output)))

관련 정보