2 saseku saseku 于 2014.11.24 00:29 提问

VBA真的无法同时运行2+个进程吗?

我看文献说,VBA6.3就支持多线程了,是所谓的能让2+个进程同时运行吗?

比如我下面的例子:
下面是2个段非常简单的代码

Sub sum1()
Dim i1 As Integer
For i1 = 1 To 30000
Range("A1") = i1
DoEvents
Next
End Sub

Sub sum2()
Dim i2 As Integer
For i2 = 1 To 30000
Range("A2") = i2
DoEvents
Next
End Sub

我想实现的效果就是当A1单元格在进行1到30000的变化时,A2也能同时运行进行1到30000的变化
现在就是运行另一段进程时,之前运行的就是自动暂停

那么要同时运行应该怎么改这段代码呢??

谢谢各位大神了

2个回答

caozhy
caozhy   Ds   Rxr 2014.11.24 06:39

DoEvents和线程有本质的不同,你的代码要想实现两个事件的交替运行,只能使用定时器来交替获得事件的处理权。

Topc008
Topc008   Rxr 2014.11.24 09:00

别费劲了,一个cpu同一个时间只能干一件事。

Csdn user default icon
上传中...
上传图片
插入图片