每隔5秒自动COPY

来源:百度知道 编辑:UC知道 时间:2024/05/04 00:43:36
这是EXCEL中SHEET里的一个按钮的功能代码:
Private Sub CommandButton1_Click()
Set WB = Workbooks.Open("d:\excel\b.xls")
With ThisWorkbook.Sheets("A11")
.[a2].Resize(.[a65536].End(3).Row).Copy WB.Sheets("SUM").[a2]
Application.CutCopyMode = False
WB.Close True
End With
End Sub

如何使这段代码每隔5秒就自动运行一次?(像WORD里自动保存一样)谢谢.

你的问题越来越有水平了啊~~~ 我喜欢回答这样的问题 ^_^
用SetTimer函数,这个函数里会定义一个回调函数,在回调函数里做你要做的事情。

这里有几个例子,只要看过一个就大致明白如何使用了,我也顺便一起学习下,呵呵
http://www.officefans.net/cdb/viewthread.php?tid=42113
http://www.excelba.com/bbs/Show.asp?bid=1&aid=153

还有用另一种方法的,也很简便。即循环调用一个函数,该函数中使用Application.OnTime,将Now获取的当前时间与自定义的time interval(你这里是5s)结合得出下一个触发时间。
http://sebthom.de/28-excel-vba-timer/
(其中,CDbl是convert to double,将数值转换为双精度浮点值的意思。不过代码里引用的单元格上下错位了1格。)

用FOR循环for(i=0,i<=50000,)算算i值

做一个批处理文件...祝好运....

去查一下一个时钟函数,应该是“Timer”吧,VB.scripe中的,不知道EXCEL里面支持不支持delay语句。

如下楼所述: