【问题标题】:Excel VBA range namingExcel VBA 范围命名
【发布时间】:2019-12-05 19:34:30
【问题描述】:

用命名范围替换单元格引用

MY 范围已命名为“序列”,由单元格 PB1 到 AFS1 组成。 VBA 代码已存在并正在运行。 VBA 代码对每列第 1 行的单元格执行简单测试。 代码现在读取,

Dim c as range
. . . 
 For Each c In Range("PB1:AFS1").Cells
. . .

请告诉我如何遵循最佳做法: 在“For each”语句中,使用使用“Sequences”的代码来引用“Sequences”范围的第一列和最后一列。没有明确的单元格引用。

是的,我的问题确实非常简单。 但我不知道 VBA 语法。

谢谢!

我希望在添加的列更改“序列”的大小或位置时避免重新输入明确的单元格引用

【问题讨论】:

  • 抱歉,该范围实际上由 PB1 到 AFS307 单元格组成。

标签: excel vba


【解决方案1】:

无需参考第一列和最后一列。

要引用该范围的第一行,例如:

 Range("Sequences").Rows(1)

【讨论】:

    【解决方案2】:

    您可以直接使用。所以如果你的范围是PB1:AFS307

    • 第一列 - Range("Sequences").Columns(1) 将提供 PB1:PB307

    • 最后一列 - Range("Sequences").Columns(Range("Sequences").Columns.Count) 将提供 AFS1:AFS307

    要访问第一个单元格,您可以这样做

    Range("Sequences").Columns(1).Rows(1) 会给PB1

    【讨论】:

      猜你喜欢
      • 2017-10-01
      • 2011-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多