使用动态单元格引用将公式应用于VBA。

时间:2018-05-04 13:44:46

标签: excel vba excel-vba loops excel-formula

您好我正在尝试根据条件将公式应用于一系列单元格。但是,如果我循环应用公式的单元格,那么它将应用它而无需动态单元格引用。 (就像我试图通过点击初始单元格的右下角手动拖动公式一样)。我如何在应用的公式中动态化细胞参考?任何帮助将不胜感激。

这是我的代码:

Sub OQWDays()
Dim oqs As Worksheet

Set oqs = Sheets("SQL_IMPORT")

    For x = 2 To oqs.Cells(Rows.Count, "A").End(xlUp).Row

        If oqs.Range("J" & x).Value = ("CBN_Suisse") Then oqs.Range("A" & x).Formula = "=NETWORKDAYS(D2,PUBLIC_HOLIDAYS!$G$3,PUBLIC_HOLIDAYS!$E$44:$E$61)"

    Next x
End Sub

1 个答案:

答案 0 :(得分:2)

认为你的意思是这个。从字符串中取出2并用x?

替换
Sub OQWDays()

Dim oqs As Worksheet

Set oqs = Sheets("SQL_IMPORT")

For x = 2 To oqs.Cells(Rows.Count, "A").End(xlUp).Row
    If oqs.Range("J" & x).Value = "CBN_Suisse" Then
        oqs.Range("A" & x).Formula = "=NETWORKDAYS(D" & x & ",PUBLIC_HOLIDAYS!$G$3,PUBLIC_HOLIDAYS!$E$44:$E$61)"
    End If
Next x

End Sub