1

我正在尝试将一个公式分配给一个单元格,该单元格的引用在每次迭代时都会发生变化。然而,下面作业的左侧似乎有效,因为如果我将右侧设为“=”“Test”“”,它似乎有效。

我想问题出在右手边的公式上。有一个字符串的组合,一个随着每次循环迭代而变化的变量和一个从单元格中获取的值。

    Worksheets("LimsOutput").Cells(4, 2 + 14 * i).Formula = "=" & BR & " Blah blah " & Worksheets("Lims").Range("A3").Value

我认为问题可能与工作表中的引号和单元格引用有关。

4

2 回答 2

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

在此处输入图像描述

于 2013-03-27T16:23:27.703 回答
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.0024850894632206830/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)
于 2013-03-27T16:46:11.550 回答