s******k 发帖数: 4 | 1 请教大家一个关于VB macro in Excel的问题。
下面是一段vb 代码。代码的目的是想从Excel中拷贝数据到powerpoint的Chart里.
这个幻灯片有50页。现在这段代码可以运行。但是每更新一页都会调用一次Graph.EXE
进程。这样最终调用50个进程,导致内存不足。我想问问大家能不能每更新一页就终止
一个
Graph.EXE进程,而不用等到最后关闭powerpoint时进程才全部释放?
谢谢大家!
Sub Copy_Paste_to_PowerPoint()
On Error Resume Next
Dim shpTemp As Object
Dim ppApp As PowerPoint.Application
Dim ppSlide As PowerPoint.Slide
Dim PPPres As PowerPoint.Presentation
Set ppApp = GetObject(, "Powerpoint.Application")
Set PPPres = ppApp.ActivePresentation
For i = 1 To 50
|
r****o 发帖数: 1950 | 2 try DoEvent ?
EXE
【在 s******k 的大作中提到】 : 请教大家一个关于VB macro in Excel的问题。 : 下面是一段vb 代码。代码的目的是想从Excel中拷贝数据到powerpoint的Chart里. : 这个幻灯片有50页。现在这段代码可以运行。但是每更新一页都会调用一次Graph.EXE : 进程。这样最终调用50个进程,导致内存不足。我想问问大家能不能每更新一页就终止 : 一个 : Graph.EXE进程,而不用等到最后关闭powerpoint时进程才全部释放? : 谢谢大家! : Sub Copy_Paste_to_PowerPoint() : On Error Resume Next : Dim shpTemp As Object
|
s******k 发帖数: 4 | 3 我试着在For Loop 后加上doEvents,结果一样。多个graph.exe被调用
For row1 = 1 To 25
doEvents
shpTemp1.Cells(1, row1 + 1) = xval(1, row1)
...
【在 r****o 的大作中提到】 : try DoEvent ? : : EXE
|