2014-12-04 3 views
0

MS Excel 2010에서 응용 프로그램을 개발 중이며 VBA를 사용하여 일부 드롭 다운을 만듭니다. 현재 탭을 기준으로 Worksheets (다른 탭)에서 작업을 수행 할 수있는 강력한 동적 함수를 만들려고합니다. A, B, C, D, EVBA Range.Parent 다른 통합 문서 간 탐색

내가 Worksheets("C")에, 나는, Worksheets("B")이 바로 전에 워크 시트에서 값을 끌어하려는 생각하는 경우 :

예를 들어 내가 탭이 있습니다. 내가 Worksheets("D")에 있다면, Worksheets("C") 등의 값을 조작하고 싶습니다 ...

어떤 것이 현재 워크 시트인지 비교할 수있는 긴 하드 코드 된 함수를 만들고 싶지 않습니다. 그런 식으로 값을 가져옵니다.

현재 현재 범위의 이름이 그대로 표시됩니다.

 Worksheets(someRange.Parent.Name) 

내가 같은 싶습니다 내 질문은, 전류 범위가 주어집니다

 Worksheets((someRange.Parent - 1).Name) 

(그러나, 이것은 잘못된 구문입니다 ...), someRange 어떻게 할 다른 워크 시트를 참조 하시겠습니까? 올바른 구문은 무엇입니까?

someRange.Parent.Parent.Worksheets(someRange.Parent.Index-1)

은을 추가해야합니다 :

someRange.Parent

이전 워크 시트 :

는 다음과 같이

답변

3

Worksheets(someRange.Parent.Name)

이 간단 해 주셔서 감사합니다 첫 번째 시트에 아직 없는지 확인하십시오.

+0

작동합니다! 고맙습니다. –

관련 문제