公式 R1C1 中的变量字符串

Variable String in Formula R1C1

我正在尝试使用 R1C1 格式创建一个公式,该格式将根据包含变量的字符串进行更改。我已经尝试创建字符串并将其输入到公式中,以及在公式中创建字符串并且 none 似乎有效。下面是我的代码:

Dim NewXX As Integer
Dim NewXX1 As Integer
Dim CE As Integer
Dim PrevCE As Integer
Dim CEText As String

CE = Cells(NewXX - 1, 1).Value + 1
CEText = "=" & CE

ActiveCell.FormulaR1C1 = _
"=SUMIFS(R[-209]C8:R[1]C8,R[-209]C1:R[1]C1,CEText,R[-209]C2:R[1]C2,""<>Summary"")*(1+R1C16)"

CEText 是每次宏 运行 时都会改变的变量。我尝试过的一些事情: CE文本 ""CEText"", '"&CEText&"', "CEText", ""="""&CE&, ""=""行政长官,

所有这些试验要么给我一个 'Expected: end of statement' 错误,要么单元格中显示的公式与代码中找到的文本(不是值)匹配。

如有任何帮助,我们将不胜感激!我是 VBA 的新手,并且总是乐于学习更好的做事方式! 谢谢!

CEText 在等式时不需要,因为 CE 是一个数字,我们只需要担心从公式字符串中删除并连接:

ActiveCell.FormulaR1C1 = _
"=SUMIFS(R[-209]C8:R[1]C8,R[-209]C1:R[1]C1," & CE & ",R[-209]C2:R[1]C2,""<>Summary"")*(1+R1C16)"

如果你想要CEText那么我们在公式中做额外的引号:

ActiveCell.FormulaR1C1 = _
"=SUMIFS(R[-209]C8:R[1]C8,R[-209]C1:R[1]C1,""" & CEText & """,R[-209]C2:R[1]C2,""<>Summary"")*(1+R1C16)"

主要问题是任何 vba 变量都必须在引号之外并与 &

连接