我是VBA编程的新手;目前,我已经为单行列创建了一个宏;在这种特殊情况下,行"2"和列"M2:BF2",但我需要这个MACRO命令在接下来的320行上运行,我不知道如何执行。这是我的命令:
在此处输入图像描述
我将感谢任何建议或指导,
最适合所有人,
Jorge
嵌套的for循环是可行的方法:
Sub test()
Dim i As Long, j As Long
For i = 2 To 320
For j = 14 To 58 Step 2
If Cells(i, j).Value = 0 Then Cells(i, j).Value = Cells(i, j - 1).Value
Next j
Next i
End Sub
有关VBA中循环的信息,请参见此。
我建议您使用Excel IF(condition,then,else(公式来完成此操作。。然后,一旦你完成了一行,你就可以将相同的公式复制粘贴到所有的行中,并用中提琴找到答案。
如果您坚持使用VBA执行此操作,则必须使用for循环。
For i = 2 to 320
If Range("N" & i).value = 0 then Range("N" & i).value = Range("M" & i).value
'.... and so on...
Next i