<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />나는 어떤 열에서는 동일한 셀을 가지고 다른 셀에서는 같은 셀을 가진 행을 제거하는 방법을 찾고자 노력했다.
예를 들어 PartNo, SerialNum 및 Site 열의 값이 동일하지만 고객 및 값이 아닌 행을 찾고 싶습니다. 그런 다음이 행 중 하나를 삭제하려고합니다. 에서
이 경우 나는 행 1,3 및 4와 함께 남을 것이다.
감사
| 부품 번호 | 일련 번호 | 대지 | 고객 | 값 |
|---|
| 1 | 2 | 삼 | 에이 | 1.5 |
| 1 | 2 | 삼 | 비 | 2 |
| 삼 | 4 | 5 | 기음 | 삼 |
| 2 | 삼 | 4 | 디 | 5 |
| 2 | 삼 | 4 | 이자형 | 6 |
스크립팅을 통해이 작업을 수행하려는 경우 다음 코드는 중복 행의 첫 번째 인스턴스 만 유지하는 예제를 보여줍니다. 요약 테이블이 세부 테이블에 링크된다는 사실을 이용합니다.
// 예제 데이터
dt1 = 열다 ( "$ SAMPLE_DATA / Big Class.jmp" ) ;
// 중복을 정의하는 데 사용되는 열은 무엇입니까?
키 콜 = { "나이" , "섹스" } ;
// 보이지 않는 연결 요약 테이블, dt2 만들기
dt2 = dt1 << 개요 ( 그룹 ( 평가 ( 키 콜 )) , 보이지 않는 ) ;
// dt2 행 반복 ...
행 2 유지 = [] ;
...에 대한 ( 아르 자형 = 1 , 아르 자형 <= NRows ( dt2 ) , 아르 자형 ++,
// ... 각 행을 차례로 선택합니다.
dt2 << SelectRows ({ 아르 자형 }) ;
// dt1에서 해당 행을 찾습니다.
duplicateRows = dt1 << GetSelectedRows ;
// 첫 번째 만 유지
행 2 유지 = VConcat ( 행 2 유지 , duplicateRows [ 1 ]) ;
// 현재 선택을 제거합니다.
dt2 << ClearSelect ;
) ;
닫기 ( dt2 , 아니오 ) ;
// 중복 된 dt1의 행을 삭제합니다.
행 2 삭제 = ( 1 :: NRow ( dt1 )) `;
행 2 삭제 [ 행 2 유지 ] = [] ;
dt1 << DeleteRows ( 행 2 삭제 ) ;
여보세요,
조인을 사용하여 테이블을 자체에 조인하고 파트 번호, 일련 번호 및 사이트 열을 일치 시키며 배수를 배수 할 수 있습니다. 이 경우 Join 대화 상자는 다음과 같습니다.
희망이 도움이됩니다!