首页 文章

VBA Excel - 根据其他单元格值更新单元格值

提问于
浏览
0

我试图根据另一个工作表中的其他范围单元格值在单元格区域中编写公式 . 公式如下:

ActiveSheet.Range("G14:G43").Formula = "=Worksheets("1ºperíodo").Range("V14:V43").Value"

但是代码并没有知道如何解决它 . V14 处的值必须等于 G14 处的值,直到最后一个单元格,即 G14 处的值等于 V43 处的值 . 除了语法错误是基于我期望的公式正确吗?

1 回答

  • 2

    “=工作表(”1ºperíodo“) . 范围(”V14:V43“) . 值”

    不是一个公式 . 这是一个 Value .

    如果您只想要静态值,那么只需分配值:

    ActiveSheet.Range("G14:G43").Value = Worksheets("1ºperíodo").Range("V14:V43").Value
    

    如果你想要一个实时公式,你需要从字符串中提取vba并使用.Address函数:

    ActiveSheet.Range("G14:G43").Formula = "=" & Worksheets("1ºperíodo").Range("V14").Address(0,0,,1)
    

    但以上可以简化为:

    ActiveSheet.Range("G14:G43").Formula = "='1ºperíodo'!V14"
    

    使用公式,我们只需要引用具有相对引用的第一个单元格,vba将对每一行进行更改 .

相关问题