Excel - 다른 시트에서 행 복사

발행물

나는 2 엑셀로 일하고있다, 1 개 분야는 모두 "SID"를 능가한다. 나는 SID의 행을 Excel B에서 'ABC'라고 복사하고 A와 동일한 SID 'ABC'의 행에 추가해야합니다.

Excel B에 14 개의 시트가 있습니다. SID를 검색하고 행을 가져와야하는 소스.

그래서 저는 제 앞에서 2 가지 도전을합니다 :

  • Excel A에서 하나의 SID를 선택하고 14 개의 Excel B에서 검색하십시오.
  • Excel B에서 해당 행을 복사 한 후 Excel A의 선택한 SID에 추가합니다.

예 :

 Excel A SID 메시지 번호 주문 날짜 ABC 43556 23/05/2009 

 Excel B 시트 3 SID 총 일수 SDT XYZ 12 45 ABC 21 32 

결과는 Excel에 있어야합니다. A :

ABC 43556 23/05/2009 21 32

해결책

이 목적을 위해 매크로 "테스트"를 제공하고 있습니다. 샘플 워크 북에서 A를 선택하십시오 ( "엑셀"과 "A"사이에 공백이 있음을 기억하십시오). 주 데이터가있는 곳에서 세 번째 샘플 데이터를 A3와 같이 오른쪽에 추가하십시오

jkh 23456 5/30/2009

두 가지 SAMPLE 통합 문서가 저장되어 열려 있어야합니다.

그런 다음 매크로를 시도하십시오 (매크로 "테스트"의 결과를 취소하는 다른 매크로 "실행 취소"를 제공했습니다)

문제가있는 경우 문제가있는 코드 문과 오류 메시지가 있으면 알려주십시오.

엑셀의 VB 편집기에서 매크로를 주차 시키십시오 (엄격하게 생각하지 않아도됩니다)

샘플 통합 문서의 매크로를 테스트하고 원본 파일에서 매크로를 사용하면 성공한 것입니다.

오벌 파일을 안전하게 보관하기 전에 메시지가있을 경우 파일을 복구 할 수 있도록해야합니다.

매크로 1 :

 Sub test () Dim r As 범위, c As 범위 Dim x As String, j 정수로, k는 정수로 작게 cfind 범위로, r1 범위로 통합 문서로 ( "Excel A.xls") 워크 시트 ( "sheet1") 집합 r = Range (.Range ( "A2"), .Range ( "A2") End (xlDown)) 각 c의 경우 rx = c.Value 통합 문서 ( "excel B.xls") j = .Worksheets.Count cfind = .Cells.Find (what : = x, lookat : = xlWhole) Not cfind가 아무것도 아닌 경우 set r1 = Range (cfind.Offset (0, 1), cfind.End (xlToRight)) r1.Copy GoTo 붙여 넣기 End If End with '워크 시트 (k) 다음 k 종료 Sub End With'두 번째 책 붙여 넣기 : c.Offset (0, 3) .PasteSpecial 다음 c '첫 번째 서적으로 끝내기 End 보결 

매크로 2 :

 워크 시트 ( "excel A.xls"), 워크 시트 ( "sheet1") 범위 (.Range ( "d1"), .Range ( "d1") End (xlToRight)) EntireColumn.Delete End With End Sub 

노트

이 팁에 대한 venkat1926에게 감사드립니다.

이전 기사 다음 기사

톱 팁