2016-10-25 3 views
0

오후 애들,countifs 범위의 배열 수식 사용

배열을 조건 범위로 사용하여 countifs 수식을 계산하려고합니다.

내 테이블의 이름은 tblSkillsMatrix이며 다음 헤더로 설정됩니다. 역할 스킬 1 스킬 2 스킬 3 스킬 4 스킬 5 스킬 6 스킬 7 스킬 9 스킬 10 기타

tblRoles라는 테이블이 있습니다. 헤더는 역할 제목이고 행은 필요한 기술을 보유합니다. 스킬 1, 스킬 3, 스킬 5, 스킬 8 등

countifs 기능을 사용하여 해당 스킬에서 훈련 된 것으로 보이는 항목 수를 계산할 수 있습니다. 일반적인 수식은 다음과 같습니다.

=COUNTIFS(tblSkillsMatrix[[#All],[Role]],'Skills Summary'!C16,tblSkillsMatrix[[#All],[Skill 1]],"Trained",tblSkillsMatrix[[#All],[Skill 3]],"Trained",tblSkillsMatrix[[#All],[Skill 5]],"Trained",tblSkillsMatrix[[#All],[Skill 8]],"Trained") 

어쨌든 배열 수식을 사용하여 어떤 열을 사용해야합니까? 따라서 공식은 대신 다음과 같이 보입니다.

=COUNTIFS(tblSkillsMatrix[[#All],[Role]],'Skills Summary'!C16,Array{columns to evaluate},"Trained") 

많은 감사

+0

배열 {평가할 열}의 일부가 {평가할 열} 부분으로 구성되어야합니까? 전체 테이블 열 참조 (tblSkillsMatrix [[# 전체], [스킬 1] 등)? 그렇다면이 방법으로 공식을 더 간결하게 만들 수는 없습니다. 테이블 내의 상대 위치 (예 : {1,4,6})를 통해 원하는 열을 참조하고 싶습니까? –

+0

안녕하세요, 도움을 주셔서 감사합니다. tblSkillsMatrix에서 열 머리글은 스킬 1, 스킬 2 등입니다. tblRoles에서 열 머리글은 작업 유형의 이름이고 행은 어떤 스킬에 있어야하는지 나타냅니다. 스킬 1, 스킬 5 등. 배열 수식 {= INDIRECT ("tblRoles [JobType]")}을 사용하면 열 머리글 "JobType"아래에 나열된 모든 기술을 반환합니다. 그래서 이것은 Skill 3, Skill 8 등일 수 있습니다. countifs 수식에 tblSkillsMatrix에서 해당 열을 사용하도록 말할 수 있어야합니다. 희망이 말이 되니? – PeteBradshaw

답변

1

배열 수식 ** : 나는 당신이 실제로하지 않는 가정 이후는, 헤더를 제외 테이블 참조를 변경

=SUM(IF(tblSkillsMatrix[Role]='Skills Summary'!C16,IF(MMULT(0+(T(OFFSET(INDIRECT("tblSkillsMatrix["&TRANSPOSE(tblRoles[JobType])&"]"),ROW(tblSkillsMatrix[Role])-MIN(ROW(tblSkillsMatrix[Role])),))="Trained"),ROW(tblRoles[JobType])^0)=COUNTA(tblRoles[JobType]),1)))

주 계산에 포함시켜야합니까?

안부

** 배열 수식은 '표준'공식과 같은 방식으로 입력되지 않았습니다. 그냥 Enter 키를 누르는 대신 CTRL 및 SHIFT 키를 누른 상태에서 Enter 키를 누릅니다. 올바르게 작성했다면 Excel은 수식 주위에 중괄호 {}를 넣습니다 (수동으로 직접 삽입하지는 않음).

+0

그것은 훌륭합니다. 고마워요,하지만 제가 옳은 질문을 한 것 같아요 !!! 내 나쁜 ... 내가 필요한 건 팀 구성원에 대한 해당 행의 JobType 및 모든 기술이 훈련 된 것으로 표시되는 행을 계산하는 것입니다. 미안, 그 정말로 긴 날이었다! (tblSkillsMatrix [스킬 1] = "훈련") – PeteBradshaw

+0

오케이 - 지금까지 일해야합니다. {= SUM ((tblSkillsMatrix [역할] = "시민") * (tblSkillsMatrix [스킬 3] * (tblSkillsMatrix [역할] = "시민") * (tblSkillsMatrix [스킬 5] = "훈련 된") * (tblSkillsMatrix [스킬 8] = "훈련 된" * 간접 ("tblSkillsMatrix ["& tblRoles [시민] & "]"= "훈련")))? – PeteBradshaw

+0

아, 알았어요. 나는 그것이 필요한 솔루션을 상당히 복잡하게 만듭니다. 게시물을 개정했습니다. –