【问题标题】:Relative Cell Address needed in Excel VBAExcel VBA中需要的相对单元格地址
【发布时间】:2014-07-24 20:29:32
【问题描述】:

我需要一个相对单元格地址。即“A2”而不是“$A$2”

当我使用myAddress = Worksheets("Sheet1").Cells(1, 2).Address时, myAddress 返回 $B$2。我实际上需要相对值B2

你问为什么?我知道你会问...因为我想使用 B2 单元格地址将公式填写到它下面的所有单元格中。而且我不希望每个后续单元格引用B2,而是引用C2 然后D2 等等。

【问题讨论】:

    标签: excel vba


    【解决方案1】:
    myAddress = Worksheets("Sheet1").Cells(1, 2).Address(False, False)
    

    【讨论】:

    • 谢谢!这和输入 .Address(0,0) 一样吗?
    • 效果是一样的,但我会为我团队中的任何人这样做。
    • 我刚刚在论坛上发现了一个帖子,在您发布答案时使用了该帖子。这是为 Address(RowAbsolute, ColumnAbsolute) 参数提供的参数正确吗?
    • @phillipsK 因为如果参数接受boolean,则传递的是布尔值,而不是可以转换为布尔值的数字。您可以将 42 而不是 True 传递给相同的方法,它看起来也很合适。它实现的唯一一件事就是让下一个人思考为什么要传递 42 而不是 True 以及这是否真的与传递 True 有一些不同的效果。
    • @phillipsK 计算机的字符串无论如何都是字节序列(数字)。但是,在此示例中,没有字符串开头。 False 不是字符串,就像 "False" 一样。此处计算机的额外工作是检测传递的VARIANT 不是VT_BOOL 类型并调用CBool() 的道德等价物。
    猜你喜欢
    • 2012-03-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-06-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-21
    相关资源
    最近更新 更多