繁体   English   中英

Excel VBA每隔一秒钟自动填充一次

[英]Excel VBA autofill every other second

我想填充一些单元格,但是我希望代码在每个循环中等待一秒钟:

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:Range类的AutoFill方法失败感谢您的帮助。

尝试直接分配公式:

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

使用Scott Craner的建议,这是工作代码:

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

谢谢

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM