2017-01-11 3 views
2

평가할 셀을 결정하기 위해 드롭 다운 셀 ($ AG $ 7)을 참조하는 배열 수식이 있습니다. 이것은 잘 작동하지만 드롭 다운에 "All"이라는 항목을 추가해야합니다.와일드 카드가있는 Excel 배열 수식

이 옵션을 선택하면 배열 수식에 "*"을 사용하여 배열의 모든 인스턴스를 반환하지만 작동시킬 수 없습니다.

이것은 현재 사용중인 공식입니다.

={SUM(IF((tblSkillsMatrix[Role]=[@Role])*(INDIRECT("tblSkillsMatrix["&V$2&"]")=$AG$7),1,0))} 

나는

={SUM(IF((tblSkillsMatrix[Role]=[@Role])*(INDIRECT("tblSkillsMatrix["&V$2&"]")="*"&$AG$7),1,0))} 

={SUM(IF((tblSkillsMatrix[Role]=[@Role])*(INDIRECT("tblSkillsMatrix["&V$2&"]")="*"&$AG$7&"*"),1,0))} 

를 사용하여 시도했다 그러나이 작동하지 않습니다.

아무도 아이디어가 있습니까?

감사

답변

2

와일드 카드를 사용할 수있는 명시 적 = 비교. COUTIFSSUMIFS 수 있습니다. 내가보기에, 당신은 오직 (조건부 합계 1과 0)을 세고 싶다.

문제는 COUTIFSSUMIFSINDIRECT 범위를 처리하지 않습니다. 그러나 INDIRECT은 (종종 휘발성 때문에) INDEX - MATCH으로 바꿀 수 있습니까? 야합니다.

그래서 :

=COUNTIFS(tblSkillsMatrix[role],[@role],INDEX(tblSkillsMatrix,,MATCH($V$2,tblSkillsMatrix[#Headers],0)),"*"&$AG$7) 

$AG$7하는 경우가 비어는 그것은 $V$2에 명명 된 컬럼의 독립적 인 계산합니다.

Btw : 테이블 (ListObject) 내에서이 값을 배열 수식으로 입력 할 필요는 없습니다.

$V$2이 비어있어 테이블 열 제목이 제공되지 않으면 작동하지 않으므로이 값은 공식의 100 % 대체가 아닙니다. 그러면 수식에 모든 열이 표시되지만 COUNTIFS을 사용하면 불가능합니다. 여기서 각 추가 범위는 criteria_range1 인수와 같은 열 수를 가져야합니다. 그래서 $V$2도 비어 있어야한다. 그러면 작동하지 않을 것이다.

그럼 당신이

{=SUM((tblSkillsMatrix[role]=[@role])*(LEFT(INDIRECT("tblSkillsMatrix["&$V$2&"]"),LEN($AG$7))=$AG$7))} 

의 장점을 사용할 수있는 경우 모두 $V$2$AG$7 비어있을 수 있습니다.

단점 : 휘발성 동작이 INDIRECT이고이 수식은 ListObject 테이블에서도 배열 수식이어야합니다. 을 사용하여 확인해야 함 Ctrl + Shift + 을 입력하십시오.

+0

안녕하세요 @Axel 리히터, 답장과 설명을 주셔서 감사합니다, 약간의 조정 후, 나는 countifs 기능을 다음과 같이 작동 시켰습니다. '= COUNTIFS ([역할] : [역할]], Table8 [ [Role] : [Rol e]], INDEX (tblSkillsM atrix, MATCH (V $ 2, tbl SkillsMatrix [# Header s], 0)), "*"& $ AG $ 7)이것은 AG7이 ""을 반환하고 비어 있지 않을 때 작동합니다. – PeteBradshaw

+0

웬일인지, 나는 위의 공식에 대한 작업을 할 수있는 한계점을 얻을 수 없었습니다. 따라서 올바르게 표시하지 못해 사과드립니다. – PeteBradshaw