使用包含文本string的公式填充多个单元格

我想问一下关于vba的excel,我想填写多个单元格的公式,但是公式包含文本string。

Sub Test() Dim strFormulas(1 To 2) As Variant With ActiveSheet strFormulas(1) = "=ISNUMBER(SEARCH(Apple,B2))" strFormulas(2) = "=ISNUMBER(SEARCH(Orange,B2))" .Range("C2:D2").Formula = strFormulas .Range("C2:D11").FillDown End With End Sub 

首先我是这样做的,但是因为局部在那里没有文本string,所以结果都是假的,因为公式应该是=ISNUMBER(SEARCH("Apple",B2))

 strFormulas(1) = "=ISNUMBER(SEARCH(""Apple"",B2))" strFormulas(2) = "=ISNUMBER(SEARCH(""Orange"",B2))" 

加倍报价是一个更简单的解决scheme,但是如果你有兴趣另一种方法来处理它将是使用Chr(34)

 Sub Test() Dim strFormulas(1 To 2) As Variant With ActiveSheet strFormulas(1) = "=ISNUMBER(SEARCH(" & Chr(34) & "Apple" & Chr(34) & ",B2))" strFormulas(2) = "=ISNUMBER(SEARCH(" & Chr(34) & "Orange" & Chr(34) & ",B2))" .Range("C2:D2").Formula = strFormulas .Range("C2:D11").FillDown End With End Sub