:: 게시판
:: 이전 게시판
|
- PGR21 관련된 질문 및 건의는 [건의 게시판]을 이용바랍니다.
- (2013년 3월 이전) 오래된 질문글은 [이전 질문 게시판]에 있습니다. 통합 규정을 준수해 주십시오. (2015.12.25.)
통합규정 1.3 이용안내 인용"Pgr은 '명문화된 삭제규정'이 반드시 필요하지 않은 분을 환영합니다.법 없이도 사는 사람, 남에게 상처를 주지 않으면서 같이 이야기 나눌 수 있는 분이면 좋겠습니다."
19/01/22 20:31
당장 생각난 방법은 필터로 1번에 해당하는 것만 띄우고. 그 옆의 알파벳들을 긁어서 복사하기 붙여넣기 하면 될 거 같습니다.
선택하여 붙여넣기로 행/열 전환만 하면 되지 않을까요.
19/01/22 20:36
예시는 자료가 적어서 괜찮은데 많아지면 수작업으론 힘들더라구요. 회사자료가 이렇게 나오는 경우가 많아 쉽게 가공할 방법을 찾고 있습니다. 답변 감사합니다.
19/01/22 20:45
일전에 비슷한 질문글이 있었는데 다른분께서 답변 남겨주신게 있습니다.
참고하시면 도움이 되실 것 같네요. https://pgr21.com/?b=26&n=129225&c=1127460
19/01/22 21:18
=IF(COUNT(IF($C2=$A$1:$A$15,1)>D$1,INDEX($B$1:$B$15,SMALL(IF($C2=$A$1:$A$15,ROW($A$1:$A$15)-ROW($A$1)+1),D$1)),"")
A1 ~ A15에 인덱스 값이 들어있고, (1~4) B1 ~ B15에 데이터 값이 들어있습니다. (a~o) D1 ~ D7에 순서가 들어있고 (1~7) C2 ~ C6에는 인덱스 값이 들어있습니다. (1~4) 위 수식을 D2에 붙여넣으신 후 Ctrl + Shift + Enter 를 치신 뒤에 (excel array formula라고 합니다) 쭉 드래그 하시면 됩니다.
19/01/22 21:18
19/01/22 21:20
사족이지만 엑셀에서 배열을 한꺼번에 계산해주는 기능이 있는줄은 방금 찾아보고 알았습니다. 참고문서2를 구글링해서 먼저 발견했는데 도무지 이해가 안 가서 마소 홈페이지 가서 예제를 몇 번 해보고 나서야 컨트롤 + 쉬프트 + 엔터에 심오한 기능이 있는 줄을 깨달았습니다. 감사합니다
19/01/22 21:31
제일 첫 IF문은
if ( [COUNT(IF($C2=$A$1:$A$15,1)>D$1], 참일 때는 값을 출력, "" ) 조건을 만족하는 원소의 개수가 D$1 (예: 1) 보다 크면 빈칸을 표시하겠다는 의미입니다. 1 인덱스에 기호가 4개밖에 없는데 다섯번째 기호는 표시할 필요가 없으니까요. 해당 조건을 만족할 때 참값은 아래 수식에서 얻을 수 있는데 INDEX($B$1:$B$15,SMALL(IF($C2=$A$1:$A$15,ROW($A$1:$A$15)-ROW($A$1)+1),D$1)) 여기서 INDEX는 열 값 ( small ~ )을 입력받아서 테이블 ($B$1:$B$15)에서 해당 위치의 값을 뿌려줍니다. SMALL(IF($C2=$A$1:$A$15,ROW($A$1:$A$15)-ROW($A$1)+1),D$1) $A$1:$A$15 범위 내에서 그 값이 $C2 와 같은 데이터의 상대 좌표들을 뽑아주는데, 그중에서 D$1 번째로 작은 열 값을 반환합니다. ROW($A$1:$A$15) 는 해당 열의 절대좌표를 반환하고, 이를 상대좌표로 치환하기 위해 맨 위 열의 열 값을 뺀 후 1을 더해줬습니다. 가령 위 이미지에서 예제대로 인덱스가 2인것의 두번째 값을 뽑자면 SMALL(IF(2=$A$1:$A$12, ROW($A$1:$A$12) - ROW($A$1) + 1), 2) SMALL([5,6,7,8],2) = 6 INDEX(B1:B12,6) = f 이렇게 해서 결과적으로 6을 출력해줍니다.
|