我正在尝试将公式分配给每次迭代时引用都发生变化的单元格。然而,下面作业的左侧似乎有效,因为如果我将右侧“=”“测试”“”,它似乎有效。
我猜问题就在于右边的公式。有一个字符串组合,一个随每个循环迭代而变化的变量和一个从单元格中获取的值。
Worksheets("LimsOutput").Cells(4, 2 + 14 * i).Formula = "=" & BR & " Blah blah " & Worksheets("Lims").Range("A3").Value
我认为问题可能与工作表和单元格引用中的引号有关。
答案 0 :(得分:0)
下面是一个简单的例子。我希望这会对你有所帮助。
Sub sample()
Dim lastRow As Long
lastRow = Range("A65000").End(xlUp).Row
Dim rng As Range
Set rng = Range("B1:B" & lastRow)
Dim BR As String
BR = "STRING"
rng.Formula = BR & " Blah blah " & cstr(Range("$A$3"))
End Sub
答案 1 :(得分:0)
Excel单元格中的连接公式在您的情况下将如下所示
= "String" & " Blah Blah " & "30/06/2012"
要将其转换为代码,请使用CHR(34)
作为双引号和"&"
参见此示例
Worksheets("LimsOutput").Cells(4, 2 + 14 * i).Formula = "=" & _
Chr(34) & BR & Chr(34) & _
"&" & _
Chr(34) & " Blah blah " & Chr(34) & _
"&" & _
Worksheets("Lims").Range("A3").Value
还有一件事:)
Worksheets("Lims").Range("A3").Value
会为0.00248508946322068
30/06/2012
因此,上面的代码会提供类似STRING Blah blah 0.00248508946322068
的输出。要最后得到日期,您还必须在日期之前和之后添加CHR(34)
。例如
Worksheets("LimsOutput").Cells(4, 2 + 14 * i).Formula = "=" & _
Chr(34) & BR & Chr(34) & _
"&" & _
Chr(34) & " Blah blah " & Chr(34) & _
"&" & _
Chr(34) & Worksheets("Lims").Range("A3").Value & Chr(34)