编写循环以将后20行的值设置为0

时间:2018-07-13 19:43:52

标签: excel vba excel-vba

我有一个大数据集,该数据集分为许多块,每个块有50行。在J列中,我需要使每种情况下的最后20行的单元格值等于0。

到目前为止,这是我的代码:

Sub Forecast()

Const Block_sz As Long = 20
Dim rng, c

Set rng = Range("J2").Offset(-30, 0).Resize(Block_sz, 1)

    For Each c In rng.Cells

        c.Value = 0

    Next c

End Sub

这是我收到错误消息的那一行

Set rng = Range("J2").Offset(-30, 0).Resize(Block_sz, 1)

我试图做的是将块大小设置为20,并使用offset开始将范围下移30行。但是,这没有用。

有什么想法吗?

谢谢

G

1 个答案:

答案 0 :(得分:1)

快速阅读MSDN - Range.Offset Property会有所帮助。

对于 RowOffset ,“正值向下偏移,负值向上偏移”。