将带变量的公式添加到活动单元格

时间:2018-01-04 11:13:28

标签: excel vba excel-formula

我想在ActiveCell中添加一个公式。公式应包含2个变量,一个是字符串,另一个是范围。

x = "This is my string variable"

y = cell.Address

我正在努力实现以下目标:

ActiveCell.Formula = "=" & x & y

单元格应包含字符串变量和包含地址的变量的值。行为应该与我在单元格中输入="Some string"&$a$1相同。

2 个答案:

答案 0 :(得分:2)

您需要将变量x放在引号中,并添加&符号,如下所示:

ActiveCell.Formula = "=" & Chr(34) & x & Chr(34) & "&" & y

另一种方法是加倍报价:

ActiveCell.Formula = "=""" & x & """&" & y

这是该部分的一个很好的答案: How do I put double quotes in a string in vba?

更新了围绕Y的支架,以及一些使阅读更容易的变量:

    Sub Blah()
    Dim strText As String
    Dim strCellRef As String
    Dim strDoubleQuotes As String

    Dim strSpace As String

        strText = "This is my string variable"
        strCellRef = "$A$1"

        strDoubleQuotes = Chr(34)
        strSpace = " "

       ActiveCell.Formula = "=" & strDoubleQuotes & strText & strSpace & _
                        strDoubleQuotes & "&" & strDoubleQuotes & "(" & strDoubleQuotes & "&" & strCellRef & "&" & strDoubleQuotes & ")" & strDoubleQuotes

    End Sub

答案 1 :(得分:0)

ActiveCell.FormulaR1C1 = "=""This is my string variable"" & RC[+1]"

其中R [rowoffset] C [columnoffset]指向相对于活动单元格的单元格。
在我的示例中,RC [+ 1]是活动单元格的右侧单元格(在同一行)