Excel / VBA:variables值/文本连接公式

我试图在macros中做到这一点:

单元格应填充=CONCATENATE("[Text]",Variable,"[Text2]")

variables是不同情况下的一个数字串。

假设: Text = Hellovariables填充1Text2 = Community

那么它应该在细胞中说

 =CONCATENATE("Hello";"1";"Community") 

它应该被读作: Hello1Community

当我尝试ActiveCell.FormulaR1C1 = "=CONCATENATE(""Hello"",Variable,""Community"")"那么我得到这个: =CONCATENATE("Hello";Variable;"Community")

可悲的是,这是variables的名称,但不是它的内容。 我得到#Name? 错误,因为variables不包裹“”。

在另一种情况下,我试图把一个前面的工作表和单元格的引用。

在我的macros,我创build一个新的工作表,并希望参考它。 我将表格的名称保存到一个variables(string)中。 然后创build一个新的工作表,某些单元格应该引用前一个工作表。

比方说上一张表的名字= sheet1单元格我想引用= B4

然后我要填写新单元格: =sheet1!B4

sheet1在一个variables中。

当我尝试ActiveCell.FormulaR1C1 = "=" & variable & "!B4" ,然后它填充单元=sheet1'!B4'

我得到#Name? 错误,因为“

在第一种情况下,你需要计算出双引号的位置:

  ActiveCell.FormulaR1C1 = "=CONCATENATE(""Hello"",""" & Variable & """,""Community"")" 

在第二种情况下,您需要计算出单引号的位置,并将该属性更改为Formula而不是FormulaR1C1

  ActiveCell.Formula = "='" & Variable & "'!B4"