나눔터  
  HOME > 나눔터 > 묻고답하기 > 엑셀
엑셀
엑셀에 대한 질문과 답변을 올려주세요. 단, 취지에 맞지 않는 글은 운영자가 삭제합니다.
 "000 님, 도와주세요", "부탁 드립니다.", "급합니다!" 등과 같이 막연한 제목을 달지 말아주세요.
[필독] 빠르고 정확한 답변을 얻는 16가지 Tip !
[필독] 저작권법 개정에 따른 이용안내
작성자:  

 조삿갓 (choga21)

추천:  2
파일:     답변_중복레코드병합및제거[2].xlsm (24.5KB) 조회:  2549
제목:   논리 오류 수정 및 기능 개선
     
  이전 답변에 약간의 논리 오류가 있어서 개정합니다.

반복 루프 실행 도중에 행 삭제로 인해서 반복 조건이 변화하기 때문에
안쪽 루프도 For 대신 Do를 써야 합니다.

중복 자료가 연속 3개 존재할 경우, 3번째 자료를 처리하지 못하는
논리오류가 발생하게 되지요.

아울러, 특정 필드를 중복 여부 검사하여 병합하는 루틴도
조금 개선하였습니다.

예시 '가나다'의 세번째 필드를
이전 프로그램에서는 BBB/bbb/BBB로 병합하지만
새 프로그램에서는 BBB/bbb로 병합합니다.
 
[불량 게시물 신고]  
조삿갓앗, 데이터가 1행이나 1열(A열)부터 시작하지 않고 비어 있을 경우, 끝부분을 처리하지 못하게 되어 있네요.
With 문 내에 re와 ce를 계산하는 부분을 다음과 같이 수정해서 사용하시기 바랍니다.

     With ActiveSheet.UsedRange
         rs = .Row
         cs = .Column
         re = rs + .Rows.Count - 1
         ce = cs + .Columns.Count - 1
     End With
09-17 (23:40)
삭제 ■신고
        
  

작성일 : 2017-08-31(08:21)
최종수정일 : 2017-08-31(08:22)
 


 ◎ 관련글

  제 목   작성자   날짜
엑셀, 엑세스로 중복행 제거 및 통합 방법 조언 구합니다. 쟘스 2017-08-29
논리 오류 수정 및 기능 개선 조삿갓 2017-08-31
[RE]엑셀, 엑세스로 중복행 제거 및 통합 방법 조언 구합니다. 조삿갓 2017-08-30