2010-07-08 8 views
1

다음 코드는 워크 시트가 Excel 창에서 실제로 선택된 경우에만 작동합니다. 곧이 매크로를 끝내고 싶지만 특정 워크 시트를 선택하여 Excel에서 열 수있는 방법을 찾지 못하는 것 같습니다. 누군가가 어떻게 알고 있다면 많은 감사드립니다. 나는 범위를 사용해야한다.vba에서 워크 시트를 열려면 어떻게해야합니까?

sheet.Range(Cells(firstRow, 2).Address(False, False), Cells(lastRow, 50)).Select 
With Selection 
    .Copy 
End With 
sheet.Range(Cells(firstRow, 3).Address(False, False), Cells(lastRow, 51)).Select 
With Selection 
    .PasteSpecial xlPasteValuesAndNumberFormats 
End With 

답변

4

워크 시트를 이름 또는 1- 기반 색인 (번호 - 1 번째 통합 문서, 2 번째 등)별로 활성화 할 수 있습니다. 구문은 어느 쪽이든 같습니다.

이 3 워크 시트를 활성화합니다 :

ActiveWorkbook.Sheets(3).Activate 

이 워크 시트 이름을 통계 활성화 : 물론

ActiveWorkbook.Sheets("stats").Activate 

을, 당신은 실제로 Excel에서 선택한 워크 시트를 필요가 없습니다 그것으로 작업 할 창. 귀하의 코드는 sheet이라는 변수를 사용합니다. 이는 귀하가 활성 워크 시트에 할당했다고 가정합니다. 이를 수행하는 대신 set sheet = ActiveWorkbook.Sheets("stats")을 사용하고 볼 수없는 경우에도 시트를 사용할 수 있습니다.

1

통합 문서 (x). 워크 시트 (x). 활성화?

관련 문제