Excel VBA每隔一秒自动填充一次
我想填充一些单元格,但是我希望代码在每个循环中等待一秒钟:
Sub fill() Dim i As Long, j As Long i = 133 j = 134 For x = 1 To 5 Application.Wait (Now + TimeValue("0:00:01")) Selection.Autofill Destination:=Range("L" & i & ":L" & j), Type:=xlFillDefault Range("L131:L132").Select i = i + 1 j = j + 1 Next x End Sub
我不断地得到以下错误:运行时错误1004:范围类的自动填充方法失败感谢您的帮助。
尝试直接分配公式:
Sub fill() Dim i As Long, j As Long i = 133 j = 134 For x = 1 To 5 Application.Wait (Now + TimeValue("0:00:01")) Range("L" & i & ":L" & j).Formula = Selection.Formula i = i + 1 j = j + 1 Next x End Sub
如果你想要的是列J的列L中的相应公式,那么这应该做到这一点:
Sub fill() Dim i As Long For i = 133 To 137 Application.Wait (Now + TimeValue("0:00:01")) Range("L" & i).Formula = Range("J" & i).Formula Next i End Sub
也许…
Sub fill() Dim i As Long, j As Long i = 133 j = 134 For x = 1 To 5 Application.Wait (Now + TimeValue("0:00:01")) Range("L131:L132").Autofill Destination:=Range("L" & i & ":L" & j), Type:=xlFillDefault i = i + 1 j = j + 1 Next x End Sub
使用斯科特·克莱纳的build议,这是工作代码:
Sub fill() Dim i As Long, j As Long i = 134 For x = 1 To 5 Application.Wait (Now + TimeValue("0:00:01")) Range("L" & i) = "=Formula(J" & i & ")" i = i + 1 Next x End Sub
谢谢