Powerpoint 2010 Makro funktioniert nur unter Windows 7, Windows XP nicht, (Kopieren, Einfügen Shapes Fehler / bug)

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

Frage

migriert ich einen VBA-Makro aus Powerpoint 2007-2010 und nach einigen Debuggen und Testen fand ich heraus, dass Formen aus einer Präsentation zu einem anderen zu kopieren funktioniert nur unter Windows 7 und nicht unter Windows XP.

Wenn ich die Präsentation schließe ich aus der Form kopiert, in Windows XP, wird das neue Objekt entleert. In Windows 7 das Objekt noch existiert.

Ich habe ein Beispiel:

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

Ich schätze jede Hilfe / Abhilfe.

War es hilfreich?

Lösung

Das Problem war, um einen Fehler in Office 2010 und hat in diesem Hotfix behoben: http: // support. microsoft.com/kb/2345341

Andere Tipps

Versuchen shapeToCopy.Duplicate statt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top