%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%22%EB%B6%80%EB%B6%84%ED%95%A9%EA%B3%84%22%EB%A5%BC%20%EA%B3%84%EC%82%B0%ED%95%A0%20%EC%88%98%20%EC%9E%88%EB%82%98%EC%9A%94%3F.png)
소계 함수가 일부 숫자 함수(개수, 합계, 평균) 대신 문자열 연결인 테이블의 "소계"를 생성하고 싶습니다.
예를 들어 다음 테이블을 고려해보세요.
나는 다음과 같은 결과를 원합니다 :
나에게 이것은 소계보다 "concat"(또는 "join")이 해제된 것처럼 보입니다. 그러나 나는 Excel이 실제로 함수형 프로그래밍을 이해한다고 생각하지 않습니다(일부 사람들이 주장하는 것과는 상관없이). 그렇다면 이 작업을 어떻게 수행할 수 있습니까? 특히 나중에 원하는 결과를 얻기 위해 수식을 편집해야 하는 경우에도 모든 소계 수식을 자동으로 삽입하는 소계 메뉴 항목을 활용하여 이 작업을 수행할 수 있는 방법은 무엇입니까?
그리고 실제로 Excel은 다양한 기능을 통해 매우 강력합니다. 그러면 소계 외에 다른 방법으로 이를 달성할 수 있나요? (저는 스크립팅이 아닌 솔루션을 선호합니다.)
또한 Excel이 도구 상자의 유일한 도구는 아닙니다. 이 테이블이 CSV 파일에 있다고 가정해 보겠습니다. 표준 Unix 유틸리티를 사용하여 이를 수행할 수 있는 방법이 있습니까(예: cut
? awk
처리할 수 있을 것 같은데 어떻게 보일까요?)
답변1
이것은 가장 우아한 해결책은 아닐 수도 있지만 Col1이 정렬된다는 사실을 기반으로 다음을 시도해 보세요.
Col2 값의 누적 연결을 보관할 열(C)을 추가합니다. C2 셀의 수식은 다음과 같
=IF(A2=A1, CONCATENATE(C1, ",", B2), B2)
으며 나머지 셀에 대해 이를 자동으로 채울 수 있습니다.열(D)을 추가하여 최대(가장 긴) 연결을 포함하는 행, 즉 Col1에 있는 각 값의 마지막 행을 표시합니다. D2 셀의 공식은 다음
=IF(A2<>A3, TRUE, FALSE)
과 같습니다. 나머지 셀을 자동으로 채울 수 있습니다.테이블은 다음과 같습니다.
TRUE
D열의 값을 기준으로 테이블을 필터링합니다 .이제 B열과 D열을 숨길 수 있습니다.