【问题标题】:VBA how to pass named range Name into a formula rather than a cell contentVBA如何将命名范围名称传递给公式而不是单元格内容
【发布时间】:2013-02-06 17:15:01
【问题描述】:

我有 3 个范围,“AA”、“AB”和“AC”。

这些范围的名称位于 A 列的第 1 页上......所以......

单元格 A1 包含两个字母“AA” 单元格 A2 包含 AB 单元格 A3 包含 AC

我需要一个公式来查看此列表 (A1:A3) 并提取范围的名称并将它们粘贴到另一张纸上。

我可以通过以下代码实现这一点:

Range("AA").Copy Sheets(2).Range("B6")

现在我需要一种方法来将“AA”替换为动态范围,例如 Cell(c,r),这样公式就可以在列表中列出...因为这些命名范围的名称在其他电子表格中会发生变化,所以我无法对它们进行硬编码。

谢谢你的建议!!!

【问题讨论】:

    标签: loops excel range named vba


    【解决方案1】:

    使用单元格 A1 中的名称,

    ActiveWorkbook.Names([A1].Value).RefersToRange.Copy
    

    将获得与您的 sn-p 相同的副本。

    【讨论】:

    • 我是否可以使用 Cell(i,1) 而不是“A1”,然后将其作为循环的一部分,其中每个步骤都是 i=i+1,这样它就会出现在一个列表中拉入新的单元格信息?
    • 是的,您可以使用 ActiveSheet.Cells(i,1).Value 代替 [A1].Value
    猜你喜欢
    • 1970-01-01
    • 2016-10-14
    • 2021-02-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多