VBA-插入引用其他图纸的公式

VBA-插入引用其他图纸的公式,vba,excel,Vba,Excel,我有一本有两张纸的工作簿。如果工作表B中的几个单元格中的数据发生变化,则工作表B中的几个单元格必须发生变化 例如,更改了图纸B单元格A1,则必须对图纸A单元格A1反映相同的内容 我正在考虑插入一个公式,比如=Sheet B!A1在A页的A1中。你们能帮我解决这个问题吗?任何其他方法都是非常受欢迎的 提前谢谢。下面的内容应该会有所帮助 Sub Demo() Dim srcSht As Worksheet, destSht As Worksheet Set srcSht = This

我有一本有两张纸的工作簿。如果工作表B中的几个单元格中的数据发生变化,则工作表B中的几个单元格必须发生变化

例如,更改了图纸B单元格A1,则必须对图纸A单元格A1反映相同的内容

我正在考虑插入一个公式,比如
=Sheet B!A1
在A页的A1中。你们能帮我解决这个问题吗?任何其他方法都是非常受欢迎的


提前谢谢。

下面的内容应该会有所帮助

Sub Demo()
    Dim srcSht As Worksheet, destSht As Worksheet
    Set srcSht = ThisWorkbook.Sheets("Sheet B")
    Set destSht = ThisWorkbook.Sheets("Sheet A")
    destSht.Range("A1") = srcSht.Range("A1")
End Sub
这将复制
表B的值!A1
活页A中!A1
。如果你想要公式,那么改变

destSht.Range("A1") = srcSht.Range("A1")

编辑:

使用


使用
=工作表B时,您是否面临任何问题!A1
工作表A
单元格A1
中?您好,我无法使用VBA插入公式。嘿,谢谢您的帮助。但是在我的例子中,我在一个变量中有一个表名,因为有多个表。您能推荐其他方法吗?@Mrig只是想提一下,如果工作表的名称中有空格,例如
“=sheet B!A1”
,它将不起作用。我们需要将名称括在
'
中,然后像
='Sheet B'一样!A1
因此,当使用变量时,我建议总是将它们括在
'
中,因为我们永远不知道变量值是什么:
“='”&srcSht.Name&“!A1”
(当然与
str
相同)。谢谢,如何将其应用于多列范围。
destSht.Range("A1").Formula = "=Sheet B!A1"  
destSht.Range("A1").Formula = "=" & srcSht.Name & "!A1"  'if you are using Worksheet variable
destSht.Range("A1").Formula = "=" & str & "!A1" 'if you are using String variable