timer控件的使用,每隔一秒计算一次

我要怎么才能用timer控件做一个每隔1秒做一次计算写入excel表格中。DimiAsIntegerPrivateSubcommand1_click()Timer1.En... 我要怎么才能用timer控件做一个每隔1秒做一次计算写入excel表格中。
Dim i As Integer
Private Sub command1_click()
Timer1.Enabled = True
Timer1.Interval = 1000
End Sub

Private Sub Timer1_Timer()
Dim a(20) As Integer
i=1
a(i) = 2 * i
Worksheets("sheet1").Cells(i + 2, 1).Value = i
Worksheets("sheet1").Cells(i + 2, 2).Value = a(i)
i = i + 1
End sub
上面的只能执行一次,我要的效果是每秒执行一次。我是初学者,知道的高手能否写细些?谢谢~~~
我要得到的是类似下面的循环一样的效果,但是要控制循环里面的语句每秒执行一次。
for i=1 to 20
a(i) = 2 * i
Worksheets("sheet1").Cells(i + 2, 1).Value = i
Worksheets("sheet1").Cells(i + 2, 2).Value = a(i)
next
展开
 我来答
cipherf
2009-10-16 · TA获得超过4.5万个赞
知道大有可为答主
回答量:2.3万
采纳率:67%
帮助的人:1.5亿
展开全部
Dim i As Integer
Dim a(20) As Integer

Private Sub command1_click()
i=1
Timer1.Enabled = True
Timer1.Interval = 1000
End Sub

Private Sub Timer1_Timer()
a(i) = 2 * i
Worksheets("sheet1").Cells(i + 2, 1).Value = i
Worksheets("sheet1").Cells(i + 2, 2).Value = a(i)
i = i + 1
End sub

你i=1放在timer里,其实是每秒执行1次,不过每次执行i都是1
现在这个写法是每秒弄1个,且因为没有在20的时候停止timer,到时a下标会溢出。最好加一句if i > 19 then timer1.enabled = false在timer里
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式