2014-11-20 5 views
0

내 VBA 코드는 한 시트에서 값을 복사하도록 설정되어 있습니다 (이 값은 시트가 열릴 때마다 변경됩니다). 그리고 다음 사용 가능한 행에 '데이터베이스'에 붙여 넣습니다.ActiveSheet.Paste 실패한 VBA Excel

생각해 보았지만 붙여 넣기 방법이 실패한 것 같아서 누구나 볼 수 있습니까?

Windows("Invoice Program.xlsm").Activate 
Range("B4").Select 
Application.CutCopyMode = False 
Selection.Copy 
Workbooks.Open ("C:\Users\Invoice Database.xlsx") 
Windows("Invoice Database.xlsx").Activate 
Range("A" & Rows.Count).End(xlUp).Offset(1).Select 
Selection.Paste 
+3

참조 [방법의 선택 사용하지 엑셀 VBA 매크로]하십시오 (http://stackoverflow.com/q/10714251/11683) – GSerg

+0

당신이 "실패"무엇을 의미합니까? 오류가 있습니까? 값이 변하지 않습니까? – Degustaf

+0

예 죄송합니다, 오류 438, 사용하도록 지금 선택했습니다. 선택 –

답변

0
Dim varTemp as Variant 

Windows("Invoice Program.xlsm").Activate 
Range("B4").Select 
varTemp = ActiveCell.Value 
Workbooks.Open ("C:\Users\Invoice Database.xlsx") 
Windows("Invoice Database.xlsx").Activate 
Range("A" & Rows.Count).End(xlUp).Offset(1).Select 
ActiveCell = varTemp 
+0

안녕하세요, 도움이 건배하지만 ActiveSheet는 원래 가지고 있던 '워크 시트 클래스 붙여 넣기 방법 실패'오류 1004 –

+0

내 "더미"통합 문서를 사용했습니다. 시스템과 코드는 잘 돌아갔다. 오류 메시지를 생성하는 코드의 마지막 줄입니까? –

+0

예 ActiveSheet.Paste는 오류로 플래그를 지정합니다 –

0

사용 ActiveSheet.Paste하지만 사용 DoEvents 전에 선이다.

DoEvents 
ActiveSheet.Paste