PowerPoint 2010マクロは、Windows XPではなくWindows 7でのみ機能します(コピー、貼り付けエラー/バグ)
-
11-10-2019 - |
質問
PowerPoint 2007から2010年にVBAマクロを移行しましたが、いくつかのデバッグとテストの後、あるプレゼンテーションから別のプレゼンテーションへのコピー形状がWindows XPではなくWindows 7でのみ機能することがわかりました。
プレゼンテーションを閉じると、Windows XPで形状をコピーしました。新しいオブジェクトは空になります。 Windows 7には、オブジェクトがまだ存在します。
例を挙げました:
Public Sub test()
Dim HandlerApplication As New HandlerApplication
Dim slide As slide
HandlerApplication.create Application
Set slide = ActiveWindow.Selection.SlideRange(1)
Dim ppt As Presentation
Dim shapeToCopy As shape
Dim copiedShape As shape
Dim strTemplateFile As String
strTemplateFile = "SlideTemplate.pptx"
Set ppt = Application.Presentations.Open(BuildPath(ComponentsPath, strTemplateFile), msoTrue, msoFalse, msoFalse)
Set shapeToCopy = ppt.slides(7).shapes(1)
shapeToCopy.Copy
Set copiedShape = slide.shapes.PasteSpecial(ppPasteShape)(1)
ppt.Close
copiedShape.Name = "TestName"
End Sub
どんなヘルプ/回避策に感謝します。
解決
問題は2010年のオフィスのバグであり、このホットフィックスで修正されています。 http://support.microsoft.com/kb/2345341
他のヒント
試す shapeToCopy.Duplicate
代わりは。
所属していません StackOverflow