所附代码在本周之前一直有效。现在,我收到“形状(未知成员):到达 PasteSpecial 行时出现无效请求错误。我已经检查过,我要粘贴的图表位于剪贴板上,我可以将其直接从剪贴板粘贴到幻灯片中。这是来自 Access 数据库的代码,该数据库正在使用 Excel 电子表格中的图表构建 PowerPoint 演示文稿。使用 Microsoft® Access® for Microsoft 365 MSO(版本 2402 内部版本 16.0.17328.20124)64 位。
Set wb1Sheet = wb1WB.Sheets(1)
wb1Sheet.Activate
Set wb1ChartObj = wb1Sheet.ChartObjects(t)
wb1ChartObj.Activate
Set wbChart = wb1ChartObj.Chart
wbChart.ChartArea.Copy
activeSlide.Shapes.PasteSpecial (ppPasteMetafilePicture)
activeSlide.Shapes(1).TextFrame.TextRange.Text = nAme7
activeSlide.Shapes(4).Left = 12
activeSlide.Shapes(4).Top = 194
activeSlide.Shapes(4).Width = 339
我已经搜索了任何答案,但找不到它不再工作的原因。我已经保存了可以工作的旧版本,但它们也不再工作了。
我猜这可能是一个时间问题。复制后、粘贴前尝试将宏暂停几秒钟。因此,例如,首先将以下过程添加到您的模块中...
Sub PauseMacro1(ByVal secs As Long)
Dim endTime As Single
endTime = Timer + secs
Do
DoEvents
Loop Until Timer > endTime
End Sub
然后尝试...
'
'
'
wbChart.ChartArea.Copy
PauseMacro 3 'seconds
activeSlide.shapes.PasteSpecial ppPasteMetafilePicture
'
'
'