Excel VBA自动化期间Powerpoint崩溃

Excel VBA自动化期间Powerpoint崩溃,excel,vba,powerpoint,Excel,Vba,Powerpoint,我有一个Excel宏,它使用现有的Powerpoint模板和图表对象,并使用Excel工作表中的数据编辑每个图表的数据。代码通过工作表中的“n”行进行迭代,为每个Excel行创建一系列4张幻灯片 奇怪的是,对于某些行,集合中的一个或多个幻灯片会产生“Excel已停止工作”错误,但数据似乎安装正确。但是,问题点是一个间歇性且有点随机的“Powerpoint已停止工作”错误。powerpoint错误使powerpoint完全崩溃。当我到达大约50个滑动标记时,这两种情况似乎都会发生 下面是集合中第四

我有一个Excel宏,它使用现有的Powerpoint模板和图表对象,并使用Excel工作表中的数据编辑每个图表的数据。代码通过工作表中的“n”行进行迭代,为每个Excel行创建一系列4张幻灯片

奇怪的是,对于某些行,集合中的一个或多个幻灯片会产生“Excel已停止工作”错误,但数据似乎安装正确。但是,问题点是一个间歇性且有点随机的“Powerpoint已停止工作”错误。powerpoint错误使powerpoint完全崩溃。当我到达大约50个滑动标记时,这两种情况似乎都会发生

下面是集合中第四个的代码作为示例。其他的基本相同:

oPPT.ActiveWindow.View.GotoSlide Index:=5 + (4 * dIndex)

' SET OBJECT & CHART REFERENCES
Set shapeObject = oPPT.ActivePresentation.Slides(5 + (4 * dIndex)).Shapes("Chart 4")
Set myChart = shapeObject.Chart
Set gChartData = myChart.ChartData
Set gWorkbook = gChartData.Workbook
Set gWorksheet = gWorkbook.Worksheets(1)

' SET VALUES 
gWorksheet.Range("B2").Value = myWs.Range("Y" & dRow).Value
gWorksheet.Range("B3").Value = myWs.Range("AA" & dRow).Value
gWorksheet.Range("B4").Value = myWs.Range("Z" & dRow).Value
gWorksheet.Range("B5").Value = myWs.Range("X" & dRow).Value

Set shapeObject = Nothing
Set myChart = Nothing
Set gChartData = Nothing
Set gWorksheet = Nothing
gWorkbook.Close
Set gWorkbook = Nothing
错误是完全随机的,每次都发生在不同的迭代中。我发现我第一次运行时从未产生PPT停止工作错误。以后的可能会

有什么想法吗?我对这里发生的事情感到困惑

请注意,在迭代Excel工作簿之前,我将模板集复制到所需的任意多个集合中。例如,如果Excel工作表有10行,我会在对underyling数据进行任何编辑之前将4张模板幻灯片复制10次


可能有时间问题吗

似乎缺少的一件事是访问嵌入式工作表之前的激活调用:

gChartData.Activate
这或许可以解释崩溃问题。 比照

干杯
Jens

似乎缺少的一件事是访问嵌入式工作表之前的激活调用:

gChartData.Activate
这或许可以解释崩溃问题。 比照

干杯
Jens

只要使用www.pptxbuilder.com,它就会做同样的事情。只要使用www.pptxbuilder.com,它就会做同样的事情。