VBA中的string串联错误

我在拼接2个string时遇到了一些麻烦。 这是我在做什么:

Dim bound1 As String Dim bound2 As String bound1 = "E6:E" & 6 + tTest_Threshold bound2 = "E" & 6 + index1 & ":E" & 6 + index2 Worksheets(chipSheet1).Cells(currIteration + 7, 5).FormulaR1C1 = "=TTEST(" & bound1 & "," & bound2 & ",2,1)" 

然而,它正在打印: =TTEST('E6':'E12','E8':'E14',2,1)

我不明白,为什么"'"被打印在Excel公式中。 任何想法在代码中我做错了什么?

谢谢

使用

  Worksheets(chipSheet1).Cells(currIteration + 7, 5).Formula = "=TTEST(" & bound1 & "," & bound2 & ",2,1)" 

代替

 Worksheets(chipSheet1).Cells(currIteration + 7, 5).FormulaR1C1 = "=TTEST(" & bound1 & "," & bound2 & ",2,1)" 

我怀疑它是因为你正在分配到FormulaR1C1属性,它需要一个不同的符号模式,你正在使用。 尝试填充Formula属性。

引用这个MSDN论坛post :

公式以A1表示法返回公式,FormulaR1C1以R1C1表示法返回公式。

默认情况下,Excel使用A1引用样式,它引用包含字母(A到IV,总共256列)的列,并引用具有数字(1到65536)的行。 这些字母和数字被称为行和列标题。 要引用单元格,请input列号,然后input行号。 例如,D50指的是D列和50行交叉处的单元格。

在R1C1引用样式中,工作表上的行和列都被编号。 在R1C1风格中,Excel表示具有“R”后跟行号和“C”后跟列号的单元格的位置。 例如,绝对单元格引用R1C1相当于A1引用样式中的绝对引用$ A $ 1。