Excel VBA,使用从单元格中收集值的变量定义范围

Excel VBA,使用从单元格中收集值的变量定义范围

这是我的代码:

Dim var As string
var = Range("B1").Value
Range("").Interior.ColorIndex = 5

是否可以以某种方式定义最后一行,如果可以,如何定义?:

Range("var").interior.Colorindex= 5

我希望范围由单元格中的值定义,但我被困在这里,因为我不知道如何继续。我需要能够在单元格 B1 中写入单个单元格编号,即 A1、A2、B6 等,并使用它们来定义上述代码中的范围。提前致谢。

答案1

当然可以。您在 B1 中输入的文本只需是一个或多个以逗号分隔的有效单元格地址或有效单元格范围,并且var无需使用引号。

Option Explicit

Sub MakeItSo()

    Dim var As String

    var = Range("B1").Value
    Range(var).Interior.ColorIndex = 5

End Sub

在此处输入图片描述

在此处输入图片描述

在此处输入图片描述

答案2

我假设您想知道如何定义单元格的名称,以便您可以直接从 Excel 或通过 VBA 宏引用它。

为了创建命名的单元格或范围,您需要在 Excel 中进行选择,然后转到公式选项卡,然后选择定义名称。

在弹出窗口中,系统会要求您为单元格命名。在您的例子中,名称为 var,但任何名称都可以。我建议使用您能记住的代表此/这些单元格的名称。

一旦您按下“确定”,似乎什么也没有发生,但是您的单元格现在已有一个名称。

如果您仅将一个单元格链接到名称,例如将 B2 链接到 Var,则现在可以直接在 Excel 中执行以下操作:

在 B2 中输入:“测试”

现在在单元格 B3 中输入公式 =var

B3 中出现文本测试。

在 VBA 中也可以做同样的事情。

Range("var") 将以相同的方式链接到 B2。

相关内容