Gast376 0 Geschrieben 14. November 2013 Melden Teilen Geschrieben 14. November 2013 Hallo zusammen, ich bin neu im Powershell-Umfeld, aber habe schon eine kleine Aufgabe für mich gefunden... leider stecke ich auch schon fest. :confused: Ziel: Ich möchte gerne alle Folien, außer einem gewissen Bereich (z.B. Folie 12-16), aus einer PowerPoint-Datei löschen. Mein Skript: Function DeleteNotNeededSlides { param ( [string]$strFileName, [int]$intNeededSlideFrom, [int]$intNeededSlideTo ) # Create PowerPoint object $comApplication = New-Object -ComObject Powerpoint.Application $comApplication.visible = [Microsoft.Office.Core.MsoTriState]::msoFalse # Open PowerPoint file $objPresentation = $comApplication.Presentations.Open($strFileName) # Delete slides $intSlidesSum = $objPresentation.Slides.Count for($intI = $intSlidesSum; $intI -ge $intSlideTo +1; $intI --) { $objPresentation.Slides.($intI).Delete } # Save and close $objPresentation.Save $objPresentation.Close # Quit PowerPoint object $comApplication.Quit $comApplication = $null } Problem: Das Skript läuft durch, aber die Folien sind noch drin. Ausgabe: OverloadedDefinitions ---------------------------- void Delete () void Delete () ... void Delete () void Save () void Close () void Quit() void _Application.Quit() Hat jemand eine Idee oder eine Lösung damit ich weiter komme!? Danke, Christian Zitieren Link zu diesem Kommentar
mamamia 13 Geschrieben 16. November 2013 Melden Teilen Geschrieben 16. November 2013 Servus Christian, ohne jetzt größere Tests zu machen, schließe die Funktionen mal mit () ab. for($intI = $intSlidesSum; $intI -ge $intSlideTo +1; $intI --) { $objPresentation.Slides.($intI).Delete() } Zitieren Link zu diesem Kommentar
Gast376 0 Geschrieben 26. November 2013 Autor Melden Teilen Geschrieben 26. November 2013 Hi Mamamia, es lag tatsächlich an den fehlenden Klammern hinter dem ".Delete" Vielen Dank für deine Antwort! Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.