2013-03-27 3 views
2

상황 : Excel 10을 사용하고 있습니다. 값을 계산하는 수식을 사용하는 명명 된 변수가 있습니다. 이 변수는 명명 된 범위가 아닌 명명 된 변수입니다 ('Name Manager'에서 "MaxDate"라는 이름은 "MAX = Sheet1! B : B"를 나타냅니다. 여기서 B 열은 날짜 목록입니다). 계산 된 값은 셀 자체에 나타나지 않고 스프레드 시트 내의 다양한 수식에 사용됩니다.VBA를 사용하여 명명 된 Excel 변수 참조

내 문제 : VBA 코드에서이 명명 된 변수를 어떻게 참조 할 수 있습니까? range ("MaxDate") 값 사용이 작동하지 않습니다. 단순히 값을 셀에 넣고 셀을 참조 할 수 있지만 변수를 직접 참조 할 수있는 방법을 찾고 싶습니다. 어떤 아이디어? 고마워.

답변

7

은 여기라는 이름의 변수 작업의 몇 가지 예를 다음과 같습니다 명명 된 변수 "이 MyVar"와 주어진 통합 문서에 대한

Sub TestNamedVariable() 

Dim varFormula As String 
Dim varValue As Variant 

'This will print the formula if you need it: 
varFormula = ActiveWorkbook.Names("MaxDate") 

'This will evaluate the named variable/formula 
varValue = Application.Evaluate("MaxDate") 

End Sub 
+0

완벽! 감사!!! – Rick

2

, 가치 "= MAX (Sheet1의 B :! B)".
다음 코드를보십시오 :

Evaluate(ActiveWorkbook.Names("MyVar").RefersTo) 


당신이 필요한 경우 당신이 참조하고있는 객체에 ActiveWorkbook를 교체합니다.

+0

OP는 이름이 지정된 범위에서 작동하지 않는다고 말했고 이름은 수식을 나타냅니다 (그러나 셀에는 포함되지 않음) –

+0

동의 함. 사실 그것은 공식이었습니다. 코드 재 작성. @TimWilliams – Octopus

관련 문제