情况:我正在使用Excel 10.我有一个命名变量,它使用公式来计算它的值。这是一个命名变量,而不是命名范围(在“名称管理器”中,名称“MaxDate”指的是“= MAX(Sheet1!B:B)”,其中列B是日期列表)。计算值本身不会出现在任何单元格中,而是在电子表格中的各种公式中使用。
我的问题:如何在VBA代码中引用此命名变量?使用范围(“MaxDate”)。值不起作用。我知道我可以简单地将值放入单元格并引用单元格,但我想找到一种直接引用变量的方法。有什么想法吗?谢谢。
答案 0 :(得分:11)
以下是使用命名变量的一些示例:
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
答案 1 :(得分:2)
对于具有命名变量“MyVar”的给定工作簿,值为“= MAX(Sheet1!B:B)”。
请尝试以下代码:
Evaluate(ActiveWorkbook.Names("MyVar").RefersTo)
如果需要,请将ActiveWorkbook替换为您引用的对象。