首页 > 解决方案 > 带有循环的 if 语句 - 大型数据集

问题描述

目前,我正在使用以下代码向列中的单元格添加一个公式,以获取预定义的单元格范围。问题是我需要公式的单元格数量会根据数据集的大小而波动。

Range("R9").Select
ActiveCell.FormulaR1C1 = "=IF(RC[-1]<0,""False"",""True"")"
Selection.AutoFill Destination:=Range("R9:R12000")
Range("R9:R62053").Select

我想要做的是对于每个在 B 列中有值的单元格,我希望宏将公式插入 C 列的相应单元格中,并在它到达 b 列中的单元格没有值的点时停止.

标签: excelvba

解决方案


下面的代码基于 OP 的评论。其中,他的代码似乎是针对R9:R12000"

Dim cell As Range, Target As Range

With Worksheets("Sheet1")
    Set Target = .Range("B9", .Range("B" & .Rows.Count).End(xlUp))
    For Each cell In Target
        If cell.Value <> "" Then cell.Offset(0, -1).Formula = "=IF(RC[-1]<0,""False"",""True"")"
    Next
End With

推荐阅读