2014-04-28 6 views
0

이 코드는 두 장의 시트로 작업 할 수 있습니다. 데이터를 잘 복사 하겠지만 실제로 이름을 바꾸기 위해 갔고 실제 시트를 사용하면 작업이 줄어 들었습니다. 두 통합 문서는 모두 열려 있으며 작업 할 때 열립니다.한 통합 문서의 데이터를 다른 통합 문서의 마지막 행으로 복사

Sub copypasteover() 
Dim wb1 As Workbook, wb2 As Workbook, LR As Long 
Set wb2 = Workbooks("TS-141260 Data Dump C312H ABC Tester.xls") 
Set wb1 = ThisWorkbook 
LR = wb2.Sheets("Data Dump").Range("B" & Rows.Count).End(xlUp).Row 
wb1.Worksheets("Data Origin").Range("A36:c36").Copy Destination:=wb2.Worksheets("Data Dump").Range("B" & LR + 1) 
Application.CutCopyMode = False 
End Sub 

은이 부분에 중지 :

LR = wb2.Sheets("Data Dump").Range("B" & Rows.Count).End(xlUp).Row 

코드가 다른의 마지막 무료 행에 그 하나의 통합 문서에서 특정 범위를 복사 및 붙여 넣기하기위한 것입니다.

통합 문서의 코드에서 이름을 약간 변경하려고 시도했지만 오류가 계속 발생합니다. 두 번째 통합 문서 이름의 길이 또는 간격과 관련이 있습니까?

통합 문서 하나를 복사 paste.xlsm 통합 문서 하나 시트 : 데이터 기원 (스크립트를 실행 버튼)

통합 문서 2 : 통합 문서 두 가지의 TS-141260 데이터 덤프 C312H ABC Tester.xls 시트 : 데이터 덤프

왜 계속 그곳에서 멈추고 계속 작동하도록 고칠 수 있습니까? 감사합니다. 대신 범위의

+0

'이 부분에서 멈 춥니 다. –

+0

런타임 오류 '1004': 응용 프로그램 정의 또는 개체 정의 오류. 내가받은 오류가 – DA69

+1

이면'LR = wb2.Sheets ("Data Dump")를 시도한다. 범위 ("B"& wb2.Sheets ("Data Dump"). 행. 개수). 끝 (xlUp). 로우 ' –

답변

0

사용 셀 : "...Tester.xls" :

LR = wb2.Sheets("Data Dump").Cells(Rows.Count,2).End(xlUp).Row 
1

나는 두 번째 통합 문서 xls 확장명을 가진 것으로 나타났습니다. 그러나 xls 통합 문서는 행 수가 65536 개이고 xlsx/xlsm - 1048576 행입니다.

Range("B" & Rows.Count) 부분 Rows.Count은 활성 시트를 나타내며 활성 시트는 1048576 행을 갖는 ThisWorkbook에 속한 것으로 보입니다. 그래서이 하나를 대신 사용하십시오 :

With wb2.Sheets("Data Dump") 
    LR = .Range("B" & .Rows.Count).End(xlUp).Row 
End With 
+0

LR = wb2.Sheets ("Data Dump")를 바꾸면 Range ("B"& Rows.Count) .End (xlUp) .Row 여기에 오류가 있습니다. 그러나 당신이 그 위에 가지고있는 것은 않습니다. 어쩌면이 새로운 것을 사용하는 방법이 확실하지 않을 수도 있습니다. – DA69

+0

또한 B17에서 시작하여 아래로 이동하여 B1에서 시작하지 않으려면 어떻게 편집 할 수 있습니까? 도와 주셔서 감사합니다. – DA69

+0

1) 사용하는대로 정확히 사용 했습니까? With 문을 사용 했습니까? 2)'LR = Application.Max (17, .Range ("B"& .Rows.Count) .End (xlUp) .Row)'를 사용하십시오. –

관련 문제