저는 VBA를 처음 사용하기 때문에 간단한 질문이라면 실례합니다. 필자는 각 클라이언트에 대해 채울 템플릿 보고서 ("Client_Name"이라는 제목의 보고서)를 만들었습니다. 즉, 피벗 테이블의 보고서 필터에서 클라이언트를 선택하고 피벗 테이블의 데이터 값을 템플릿에 복사하는 것입니다. 이 문제를 자동화하기 위해, 나는 템플릿을 복제하고 현재 피벗 테이블에서 선택한 클라이언트에 대한 이름을 변경하려면 다음 코드를 만든 것은 :VBA 워크 시트 셀 값에 따라 다름을 선택하십시오.
Sheet_Name_To_Create = Sheets("Pivot").Range("B1").Value
Sheets("Client_Name").Select
Sheets("Client_Name").Copy After:=Sheets(Sheets.Count)
Sheets(ActiveSheet.Name).Name = Sheet_Name_To_Create
내 다음 단계는 피벗 테이블 ("피벗"로 돌아갈 것 워크 시트) 새로 작성한 클라이언트 워크 시트에 데이터를 복사하십시오. 그러나 워크 시트의 이름은 각 클라이언트마다 분명히 다르게 변경됩니다. 피벗 테이블 보고서 필터에 현재 표시된 클라이언트와 이름이 같은 워크 시트를 선택하기 위해 VBA 코드를 참조 할 수 있습니까?
감사하고 내가 데이터를 복사 이동할 때 피벗 워크 시트로 전환 :
독서 권장? 따라서 Pivot 시트로 전환 한 후에는 CopiedSheet (즉, ActiveSheet)가 피벗 시트 자체가되어 더 이상 ActiveSheet가 아닌 복제 된 템플릿으로 이동할 수 없습니다! –
@ user2696883'ActiveSheet'는 Excel에서 제공하는 속성입니다. 시트 활성화를 반영하여 자동으로 변경됩니다. 어느 순간 이건 시트에 대한 참조를 포함합니다. 이 참조를 복사합니다. 귀하의 사본은 자동으로 변경되지 않습니다. – GSerg