Aman, Dell 및 U3:U8
Ivan ( S3:S8
범위 T3:T8
.
답변1
Microsoft 365를 사용하는 경우 작동하는 공식은 다음과 같습니다.
=SUM(
FILTER(
$C$3:$C$8,
BYROW(
$B$3:$B$8,
LAMBDA(arr,
OR(ISNUMBER(SEARCH(TEXTSPLIT(B12, ","), arr)))
)
) * ($A$3:$A$8 >= $A$12) * ($A$3:$A$8 <= A13)
)
)
이전 버전에서도 이 작업을 수행할 수 있지만 좀 더 복잡합니다.
먼저 2개를 생성합니다.명명된 공식:
numWords Refers To: =LEN(Sheet9!$B$12)-LEN(SUBSTITUTE(Sheet9!$B$12,",",""))+1
seq Refers To: =ROW(INDEX(Sheet9!$A:$A,1):INDEX(Sheet9!$A:$A,numWords))
그런 다음 다음 공식을 사용할 수 있습니다.
=SUM(
MMULT(
ISNUMBER(
SEARCH(
TRANSPOSE(
TRIM(
MID(
SUBSTITUTE(
$B$12,
",",
REPT(" ", 99)
),
IF(seq = 1, 1, (seq - 1) * 99),
99
)
)
),
$B$3:$B$8
)
) * ($A$3:$A$8 >= $A$12) * ($A$3:$A$8 <= $A$13),
seq ^ 0
) * $C$3:$C$8
)
두 번째 공식에서:
numWords
"단어 포함" 셀에 있는 단어 수입니다.
seq
numWords와 동일한 숫자 배열을 반환합니다(예: {1,2,3}
)
MMULT
. 유효한 검색 배열을 값의 단일 열로 변환하는 데 사용됩니다(예: BYROW
첫 번째 공식의 와 유사).
쉼표로 텍스트 문자열을 분할하려면:( TEXTSPLIT
함수 대체
TRIM(
MID(
SUBSTITUTE(
$B$12,
",",
REPT(" ", 99)
),
IF(seq = 1, 1, (seq - 1) * 99),
99
)