2013-03-12 4 views
2

나는 값 AE 폼에서 나오는 옵션과 같습니다과 같은 스프레드 시트가 있습니다카운트 발생

+------+------+------+ 
| Opt1 | Opt2 | Opt3 | 
+------+------+------+ 
| A | A | B | 
| B | C | A | 
| C | C | B | 
| A | E | C | 
| D | B | E | 
| B | E | D | 
+------+------+------+ 

내가 순위를 만들고 싶어이 가장을 보여주는 각 옵션에 대해 선택한 옵션.

+------+------+------+ 
| Rank | Opt1 | Numb | 
+------+------+------+ 
| 1 | A | 2 | 
| 1 | B | 2 | 
| 3 | C | 1 | 
| 3 | D | 1 | 
+------+------+------+ (I have 3 of these, one for each option) 

내가 같은 순위를 제작하지만, 옵션에 합류, 이제 3 개 가지 옵션의 요약을하고 싶지 : 순위는 옵션의 순위이며, 번호가 옵션의 수이고 나는 이미이 있습니다.

+------+------+------+ 
| Rank |Opt123| Numb | 
+------+------+------+ 
| 1 | B | 5 | 
| 2 | A | 4 | 
| 2 | C | 4 | 
| 4 | E | 3 | 
| 5 | D | 2 | 
+------+------+------+ 

이 작업을 수행하는 가장 쉬운 방법 3 개 순위 테이블 또는 원래 3 데이터 열에서 데이터를 가져 오는 것입니다 : 그것은 같은 것입니까? 그리고 어떻게하면 좋을까요? 이미 옵션의 이름, 개수 및 순위를 가져 오는 수식이 있지만 여러 열로 작업하는 방법을 알지 못합니다.

=SORT(UNIQUE(FILTER('Form Responses'!F2:F;NOT(ISBLANK('Form Responses'!F2:F)))); RANK(COUNTIF('Form Responses'!F2:F; UNIQUE(FILTER('Form Responses'!F2:F;NOT(ISBLANK('Form Responses'!F2:F))))); COUNTIF('Form Responses'!F2:F; UNIQUE(FILTER('Form Responses'!F2:F;NOT(ISBLANK('Form Responses'!F2:F))))); TRUE); FALSE) 

칼럼 C :

=ArrayFormula(COUNTIF('Form Responses'!F2:F; FILTER(B2:B;NOT(ISBLANK(B2:B))))) 

칼럼 A : 다른 시트

칼럼 B : I 가진 것을

합니다 (F 열은 데이터 항목의 하나 인)

=ARRAYFORMULA(SORT(RANK(FILTER(C2:C;NOT(ISBLANK(C2:C))); FILTER(C2:C;NOT(ISBLANK(C2:C)))))) 

답변

3

편집 :

는 COLS 병합 :

=TRANSPOSE(split(join(",",D2:D,E2:E),",")) 

은 매우 깨끗하지 2 COLS을 병합,하지만 작동합니다.

전체 식 (동일 Stacking multiple columns on to one? 여기로) :

=SORT(UNIQUE(FILTER(TRANSPOSE(split(join(",",D2:D,E2:E),","));NOT(ISBLANK(TRANSPOSE(split(join(",",D2:D,E2:E),",")))))); RANK(COUNTIF(TRANSPOSE(split(join(",",D2:D,E2:E),",")); UNIQUE(FILTER(TRANSPOSE(split(join(",",D2:D,E2:E),","));NOT(ISBLANK(TRANSPOSE(split(join(",",D2:D,E2:E),","))))))); COUNTIF(TRANSPOSE(split(join(",",D2:D,E2:E),",")); UNIQUE(FILTER(TRANSPOSE(split(join(",",D2:D,E2:E),","));NOT(ISBLANK(TRANSPOSE(split(join(",",D2:D,E2:E),","))))))); TRUE); FALSE) 

트랜스 포즈는 정렬 후에 수행 할 수있다.

+0

감사합니다.하지만 80 개 이상의 옵션이 있기 때문에 "A"가 동적이어야하며 각각에 대해 이렇게 만드는 것이 실용적이지는 않습니다. 또한 모든 열에 80 가지 옵션이 모두 표시되는 것은 아닙니다. 아무도 선택하지 않으면 나타나지 않습니다. –

+0

내가 충분히 명확한지는 모르겠지만 예를 들어, 첫 번째 예에서 Opt1 열에는 "E"가 표시되지 않았습니다. 그래서 어떻게 든 먼저 3 개 열의 모든 옵션을 결합하여 고유하게 만들고 COUNTIF 조건에 ArrayFormula로 넣을 수 있습니다. 3 열 모두의 옵션에 참여하는 첫 번째 부분에 붙어 있습니다. –

+0

3 개의 열만 있습니까? 그렇다면이 방법을 사용할 수 있어야합니다. 현재 "A"다이나믹을 만드는 데 사용하는 방법이 효과가 있습니다. 어쩌면 나는 뭔가를 놓치고있다. – eddyparkinson