This
Dim WB As Workbook
Set WB = Workbooks.Open("foo\bar.xlsx", , True)
Debug.Print (WB.Names("named_cell").Value)
WB.Close (False)
返回值
='Sheet'!$C$377
如何获取单元格C377
中的值,而不是单元格中的内容?
Debug.Print Range("Named_Range").Value
Debug.Print [Named_Range].Value '// This uses the evaluate method
如果命名区域在活动工作簿中(应该是因为它是您打开的最后一个工作簿),则不需要使用工作表对象对其进行合格化。
WB.Names("named_cell")
返回一个Name
对象,那么这个对象具有一个RefersToRange
属性。这个属性返回由名称对象引用的Range对象。请参见https://msdn.microsoft.com/en-us/library/office/ff834918.aspx。Debug.Print WB.Names("named_cell").RefersToRange.Value
Debug.Print (WB.Worksheets("NameOfSheet").Range("named_cell").Value)
。 - Ralph