시트 사이의 일부 범위를 복사 할 때 복사 또는 붙여 넣기 전에 시트를 활성화 할 때만 작동하는 이유를 알 수 없습니다. 이 작품 :VBA 복사 및 붙여 넣기는 시트를 활성화 할 때만 작동합니다.
s.Activate
s.Range(Cells(2, 8), Cells(lrow, 8)).Copy
d.Activate
d.Range(Cells(2, 3), Cells(lrow, 3)).PasteSpecial xlPasteValues
이되지 않습니다 : 이미 변수 "S"와 "D"로 지정 한 경우
s.Range(Cells(2, 8), Cells(lrow, 8)).Copy
d.Range(Cells(2, 3), Cells(lrow, 3)).PasteSpecial xlPasteValues
왜 VBA는 시트를 활성화 할 필요합니까? Range(...)
및 Cells(...)
방법은 자격이되지 않을 때, 그들은 활성 워크 시트에서 작동하기 때문입니다 감사합니다
당신은 *** ALL *** 범위 객체를 한정해야합니다 :'s.Range (s.Cells (2, 8), s.Cells (lrow, 8)). 복사' –
참고로, 클립 보드로 직접 값을 할당하십시오. d.Range (d.Cells (2, 3), d.Cells (lrow, 3)). 값 = s.Range (s.Cells (2, 8), s.Cells (lrow, 8)). ' –
감사합니다. 정말 도움이됩니다! – uttuck