다른 셀에 두 개 이상의 동일한 값이 있으면 셀을 병합합니다. 내 데이터에는 하나의 셀을 제외하고 두 개 이상의 레코드가 있습니다. 예 A1 이름 = Joe, A2 = Joe하지만 B1 = 화요일, B2 = 수요일. A1 = Joe와 B1 = 화요일, 수요일 한 행을 표시해야합니다. 나는 C1 = B1 & B2와 같은 또 다른 행을 만들 수 있지만 A를 통해 루프를 만들고 어떻게 일치하는 레코드가 있다면 B에있는 두 값을 병합합니다. C1, C2에 넣는 것과 같을 것이라고 생각합니다. , C3 ... = IF (A1 = A2 ..., B1 & B2, "") 그러나 A2 대신에 A를 통해 어떻게 루프 할 수 있으며 일치하는 레코드에 대해 B의 결과를 합병 할 수 있습니까?Excel 다른 셀이 일치하면 셀을 병합합니다.
답변
가능한 해결책은 다음과 같습니다. (나는 당신의 설정을 올바르게 이해하고 있습니다.)
단계 1) A 열의 모든 고유 이름을 새 시트로, 다시 새 열의 A 열로 분리하십시오 - Excel 2007 또는 이후 버전을 사용하는 경우 전체 열을 복사 한 다음 중복 제거 도구를 사용하면됩니다.
2 단계) 새 시트에 다음을 B2 열에 추가하십시오. 그러면 각 Name의 발생 횟수가 계산됩니다. (주 : 원시 데이터가 Sheet1에 있고 새 복사본이 Sheet2에서 처리되고 있다고 가정합니다.)
=COUNTIF(Sheet1!$A$1:$A$5,$A2)
3 단계) C3에 다음을 추가하십시오. 이렇게하면 이름이 처음 나타나는 행 번호를 찾습니다. (중요 :이 당신의 원시 데이터가 모두 함께 그룹화 나타나는 이름을 보장하기 위해 적용되는 정렬이 필요 의미) 다음과 같은 배열 수식을 추가해야합니다 J에 열 D에
=MATCH($A2,Sheet1!$A$1:$A$5,0)
4 단계). 그 전에 배열 수식을 사용하지 않았다면 D2 : J2 (ii) D2가 활성 셀인지 확인합니다. (iii) 수식 입력 줄에 수식을 입력합니다. (iv) ctrl + shift + press
을 입력합니다.이것은 B는 (열의 행 반전) 제 열 발생 (단계 3), 이름 (단계 2)의 카운트가 다시 크기 및 전치
=TRANSPOSE(OFFSET(Sheet1!$B$1:$B$5,C2-1,0,B2))
하여 오프셋 열에 데이터를 얻어 당신에 맞게 수
은 그대로 필요하지만 당신이 일을 분리하는 쉼표를 주장하는 경우,
=IF(ISNA(D2),"",D2)&IF(ISNA(E2),"",","&E2)&IF(ISNA(F2),"",","&F2)&IF(ISNA(G2),"",","&G2)&IF(ISNA(H2),"",","&H2)&IF(ISNA(I2),"",","&I2)&IF(ISNA(J2),"",","&J2)
J.
에 B를 이용하여 열을 당신은 K2이를 추가 할 수 있습니다, 그냥 숨기기
나는 7 개 이상의 값을 함께 사용할 필요가 없다고 가정했습니다 (예 : 7 일). 그러나 그렇게하면 배열 수식을 더 많은 열로 확장해야합니다. 최대 세트가 없으면 VBA 솔루션을 조사하는 것이 좋습니다.
배열 수식을 사용할 필요가없는 다른 솔루션을 발견했으며 모든 가능성을 반복 할 수 있어야합니다. 다시 말하지만, 그것은 이름으로 분류되는 원시 데이터를 필요로합니다 (모든 이름을 함께 그룹화되도록), 다음 (나는 C2를 있으리라 믿고있어) 직접 원시 데이터 후
=IF(A1<>A2,B2,C1&","&B2)
이를 열이 수식을 추가 위의 모든 항목을 쉼표로 결합하고 이름이 변경 될 때마다 결합을 다시 설정합니다. 이 영지를 통해 원하는 데이터가있는 이름이 항상 이름의 마지막 인스턴스와 비교됩니다. 이전 예제에서 단계 2 & 3의 결과를 사용하여 마지막 인스턴스를 찾은 다음 위 공식의 결과에 대해 색인을 생성합니다.위에서
=INDEX(Sheet1!$C:$C,COUNTIF(Sheet1!$A:$A,$A2)+MATCH($A2,Sheet1!$A:$A,0) -1)
난 당신에게 최종 답변을 원하는 이름을 가정하고있어 (3 단계 나는 C2에 넣어)하지만, 4 단계는 0을 반환
위의 짧은 IF 문 귀하의 모든 훌륭한 조언을 주위에 놀고 난 후에 내가 원하는 모든 있습니다. "= IF (A1 <> A2, B2, C1 &", "& B2)"는 동일한 사람의 레코드 인 경우 다음 날을 추가하지만 둘째 레코드를 사람의 두 번째 레코드 (세 번째 등)에 추가합니다. 루핑 할 때 어떻게해야하는지 이해하지만 첫 번째 레코드가 추가 일을 수신하게하는 방법입니다. 이유 :이 데이터를 읽는 시트는 = MATCH 및 OFFSET을 사용하면 훨씬 더 많은 작업을 수행하며이 정보가 필요한 셀은 첫 번째 레코드를 읽어야합니다. – user745778
나는 첫 번째 기록에 여러 날을 보여주기 위해 스크립트를 조정하려고 노력했지만 스크립트는 꽤 잘리고 건조 해 보이고 길을 찾지 못한다. 가능한가? – user745778
가능합니다. 짧은'IF' 문을 그대로두면 (열을 보이지 않으면 열을 숨긴다), 열에 두 번째 수식 ('= INDEX ... '로 시작하는 문법)을 추가한다. 바로 옆에 있으면 모든 레코드에 전체 결과가 표시됩니다. INDEX 명령문 앞에 followng을 추가하여 첫 번째로만 제한 할 수 있습니다. 'IF (A1 = A2, "", INDEX ...' – Skytunnel
- 1. 동일한 행의 다른 셀이 비어 있으면 셀을 지우십시오.
- 2. 셀을 다른 셀의 값으로 설정하는 경우 다른 셀이 값인 경우
- 3. 두 개의 HTML 표 셀을 병합합니다.
- 4. 하나의 셀을 변경하기 만하면 listview의 다른 셀이 왜 색상을 변경합니까?
- 5. 다른 셀이 참조하는 셀 찾기
- 6. Excel : VBA로 셀이 비어 있는지 확인하는 방법?
- 7. Excel 셀을 클릭하여 VBA 함수 실행
- 8. 끝 셀이 주어진 경우 데이터 블록의 시작 셀을 반환하는 Excel 수식이 있습니까?
- 9. Excel 2003에서 셀이 다른 곳에서 사용되고 있는지 여부를 확인하는 방법이 있습니까?
- 10. 다른 사용자의 github에서 Merge를 병합합니다.
- 11. Copy 가장 가까운 열의 셀이 채워진 셀까지 Excel 데이터를 복사합니다.
- 12. UITableViewController 셀을 선택했을 때 셀이 강조 표시되지 않음
- 13. 셀이 강조 표시된 경우 Excel 사용자 정의 함수
- 14. Excel 스프레드 시트는 다른 셀의 값을 기반으로 셀을 채 웁니다.
- 15. 특정 셀을 선택하고 다른 셀에 데이터 배치 Excel
- 16. 해당 셀이 UITableView 내에서 고유하다면 재사용 가능한 셀을 정말로 dequeueing합니까?
- 17. 병합 된 셀이 포함 된 Excel 테이블 정렬
- 18. 편집 할 수없는 셀이 거의없는 PHP를 사용하여 Excel 시트 생성
- 19. Excel VBA - 텍스트 조각이 포함되어 있는지 셀을 확인하십시오.
- 20. 하나의 테이블보기에서 다른 셀을 사용하는 방법은 무엇입니까?
- 21. Excel 가져 오기가 빈 셀을 반환합니다.
- 22. JSON Webservice에서 Excel 2010의 셀을 자동 업데이트
- 23. 셀을 건드린 경우 다른 셀을 활성화하십시오.
- 24. EXCEL VBA 도움말 - 빈 셀을 삽입하는 기능
- 25. 일반적인 열을 사용하여 두 개의 Excel 파일을 병합합니다.
- 26. Excel 2007에서 마지막 활성 셀을 얻는 방법
- 27. Excel 파일에서 병합 된 셀을 검색하는 방법
- 28. Java를 사용하여 Excel 스프레드 시트의 셀을 병합
- 29. Excel 테이블을 반복하고 특정 셀을 삭제합니다.
- 30. excel vba에서 행을 반복하고 셀을 얻으십시오.
단계 1, 2 및 3은 괜찮 았는데 셀 A2입니다. 더 나쁜 부분은 내가 도전적으로 7보다 많은 숫자를 무제한으로 필요로한다는 것입니다. 그래서 VBA를 태그에 추가하여 누군가가 나를 궤도에 올릴 수 있기를 바랍니다. – user745778
@ user745778 귀하의 권리는 제가 3 단계에서 C2를 의미했습니다. 나는 좀 더 단순한 수식을 사용하여 다른 해결책을 찾았습니다. 난 다른 대답으로 게시했습니다 – Skytunnel