VBA动态范围公式未设置在范围内

时间:2017-12-21 09:46:27

标签: excel vba excel-vba

我的代码有问题。我使用userform运行一个简单的VBA代码,在工作簿的工作表之一中,我在特定列的特定范围内运行我的公式。不知何故,我不知道为什么,代码运行在这条线上没有一些错误,但细胞保持原样没有公式代码结束。如果有人可以在AC和AD栏中分析我的问题,我会很高兴。

这里是具体的代码行,问题是只有列AC,AD:

    VLR = MainWB.Worksheets(2).Cells(Rows.Count, "A").End(xlUp).Row

With MainWB.Worksheets(5)
    UniqueLRow = .Cells(Rows.Count, "E").End(xlUp).Row
End With

'Column AC
With MainWB.Worksheets(2)
    .Range("AC2").Activate
    .Range("AC2:AC" & VLR).FormulaR1C1 = "=IF(COUNTIF(Unique!R2C5:R " & UniqueLRow & " C5,visual!RC[-2]),1,"""")"
End With

HourLR = MainWB.Worksheets(6).Cells(Rows.Count, "E").End(xlUp).Row

'Column AD
With MainWB.Worksheets(2)
    .Range("AD2:AD" & VLR).FormulaR1C1 = "=IF(COUNTIF(HourCommissions!R2C5:R " & HourLR & " C5,visual!RC[-3])>0,1,"""")"
End With

2 个答案:

答案 0 :(得分:1)

这里;

.Range("AD2").AutoFill Destination:=Range("AB2:AB" & VLR), Type:=xlFillDefault

目的地是活动工作表中的范围。如果它只是工作表(2),它将起作用。你想要这个还是忘记戒指之前的点?

答案 1 :(得分:1)

尝试一下,看看是否可以解决您的问题......

With MainWB.Worksheets(2)
    .Range("AC2", "AC" & VLR).FormulaR1C1 = "=IF(COUNTIF(Unique!R2C5:R" & UniqueLRow & "C5,visual!RC[-2]),1,"""")"
End With