Excel VBA中循环中公式的单元格引用

时间:2013-10-16 02:36:35

标签: excel vba excel-vba

我试图让我的宏将公式放入一个特定的单元格,其单元格引用由循环定义,公式数据的范围(对于STDEV.P)基于循环的进度。到目前为止我所做的代码能够在我想要添加STDEV的位置插入一行,在单元格A(x)中输入文本“StdDev”,然后选择该新行中的每个单元格(递增列)。其代码如下所示:

firstCell = 2
lastCell = 2
initialValue = 84
stepSize = 5
lastRow = Range("A1").End(xlDown).Row
lastColumn = Range("A1").End(xlToRight).Column
For x = 2 To lastRow
    cellDifference = Range("B" & (x)).Value - initialValue
    If Abs(cellDifference) > 1 Then
        lastCell = x - 1
        Range("B" & (x)).EntireRow.Insert
        Range("A" & (x)) = "StdDev"
        For y = 2 To lastColumn
            Cells(x, y).Select
        Next y
        x = x + 1
        firstCell = x
        initialValue = initialValue + stepSize
    End If
Next x

我试图使用以下代码:

Cells(x, y) = "=STDEV.P(" & Cells(firstCell, y) & ":" & Cells(lastCell, y) & ")"

但是这给出了错误,“应用程序定义的或对象定义的错误”。我需要知道如何将单元格引用值输入到公式中,但是它是一个依赖于循环的动态范围。

任何对此的帮助都将很高兴。谢谢。

1 个答案:

答案 0 :(得分:1)

尝试这样的事情:

            Cells(x, y).FormulaR1C1 = "=STDEVP(" & "R" & firstCell & "C" & y & ": R" & lastCell & "C" & y & ")"
相关问题