Excel 从命名数组范围中获取命名单元格

Excel 从命名数组范围中获取命名单元格,excel,vba,Excel,Vba,我有一个命名的单元数组,叫做Cars,从A1:B10开始运行 在这里面,我有一个名为Toyota的细胞,位于A4位置 因此,我: Private cars As Variant cars = Range("Cars").Value Dim toyota As String toyota = cars.Range("Toyota").Value ??? 我是vba的初学者,请原谅我的新奇。你不能在一个范围内嵌套一个范围。您可以通过使用图纸名称对丰田系列进行限定来确定其地址。事实上,有一个重叠的

我有一个命名的单元数组,叫做Cars,从A1:B10开始运行

在这里面,我有一个名为Toyota的细胞,位于A4位置

因此,我:

Private cars As Variant
cars = Range("Cars").Value

Dim toyota As String
toyota = cars.Range("Toyota").Value ???

我是vba的初学者,请原谅我的新奇。

你不能在一个范围内嵌套一个范围。您可以通过使用图纸名称对丰田系列进行限定来确定其地址。事实上,有一个重叠的范围称为汽车是完全无关的解决丰田范围

使用图纸名称而不是周围的范围名称限定范围

toyota = ThisWorkbook.Worksheet("Sheet1").Range("Toyota").Value
有两种选择:

使用上面的@teylyn答案

如果范围Toyota始终在单元格A4中,而Cars Range设置为范围A1:B10,则可以使用以下代码检索该值:

代码


问题是什么?第一行已经错了。第二行不会给你一个值,相反,它会给你一个数组,而最后一行不会工作。
Dim toyota As String
toyota = Range("Cars").Cells(4, 1).Value