PowerPoint 2010マクロは、Windows XPではなくWindows 7でのみ機能します(コピー、貼り付けエラー/バグ)

StackOverflow https://stackoverflow.com/questions/4491046

質問

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 代わりは。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top