Wie fassen Sie mehrere Powerpoint-Dateien in einer Datei zusammen?

6572
threeFourOneSixOneThree

Gibt es eine einfache Möglichkeit, mehrere Powerpoint-Dateien in einer einzigen Datei zu kombinieren?

Unter ms dos für Binärdateien können Sie diese mit / b kopieren oder entsprechend dieser SO-Frage einfach copy verwenden

 copy /b <source1> + <source2> [....] <targetfile> // or copy *.csv new.csv 

Ich habe das später ausprobiert, copy *.pptx new.pptxaber das hat nicht funktioniert - das resultierende pptx war leer. Der erste Ansatz copy /berfordert die Eingabe jedes Dateinamens. Dies ist umständlich und ich habe es nicht versucht.

Hast du irgendwelche Ideen, wie ich das souverän machen könnte?

0
Ist es eine Option, dies von Hand zu tun? Da gibt es eine Funktion dafür in PowerPoint. AirPett vor 7 Jahren 0
Kommt darauf an, wie komfortabel es ist - kann ich mehrere Dateien gleichzeitig auswählen oder muss ich die Schritte für jede Datei wiederholen? threeFourOneSixOneThree vor 7 Jahren 0
Gemäß [this] (http://www.online-tech-tips.com/free-software-downloads/merge-powerpoint-ppt-files/) müssen Sie dies für jede Datei manuell tun. ** Aber ** Wenn Sie die große Präsentation nach der Erstellung nicht bearbeiten möchten, können Sie am einfachsten alle Dateien in PDF konvertieren (Sie können ein Werkzeug finden, das automatisch 100 Dateien erstellt) und diese PDF-Dateien dann kombinieren -Dateien als eine große Datei (tausendmal mit zB Adobe Acrobat gemacht) AirPett vor 7 Jahren 0

1 Antwort auf die Frage

1
Sudipta Biswas

Ja, das geht, aber mit Binary Appending ist das nicht möglich.

Warum...??
Da es sich bei einer CSV-Datei um eine durch Kommas getrennte Wertedatei handelt, können Daten in einem Tabellenformat gespeichert werden. CSVs sehen aus wie eine Tabellenkalkulation im Garten, jedoch mit der Erweiterung .csv. Wenn Sie sie also anhängen, können Sie sie trotzdem in Excel verwenden. .Pptx hat jedoch unterschiedliche Formate, die nicht so einfach sind. Daher funktioniert das Anhängen von Binärdateien nicht.

Mit dem folgenden Code werden alle Folien aus allen Präsentationen im selben Ordner wie die derzeit aktive Präsentation eingefügt (es wird jedoch nicht versucht, Folien aus der aktuellen Präsentation in sich selbst einzufügen). (Persönlich getestet)

Folge den Schritten:

  1. Einen neuen Ordner erstellen.
  2. Speichern Sie die aktuelle Datei in dem neuen Ordner, in den Sie Folien aus anderen Dateien einfügen möchten.

  3. Kopieren Sie alle anderen PPTX- oder PPT-Dateien in den neuen Ordner. Öffnen Sie das Dokument, in dem Sie Dateien hinzufügen möchten.

  4. Drücken Sie ALT + F11, um den VBA-Editor zu starten.

  5. Oder wählen Sie Datei | Optionen | Passen Sie das Menüband an und markieren Sie im Listenfeld unter Multifunktionsleiste die Option neben Entwickler. Schließen Sie das Dialogfeld "Optionen", klicken Sie auf die Registerkarte "Entwickler" und anschließend auf "Visual Basic", um den Editor zu starten.

  6. Stellen Sie im VBA-Editor sicher, dass Ihre Präsentation im linken Bereich markiert ist.
    Wählen Sie Einfügen, Modul aus der Menüleiste, um ein neues Codemodul in Ihr Projekt einzufügen.

  7. Fügen Sie diesen Code ein und ändern Sie bei Bedarf " *.PPT" in " *.PPTX" oder was auch immer

    Sub InsertAllSlides() ' Insert all slides from all presentations in the same folder as this one ' INTO this one; do not attempt to insert THIS file into itself, though.  Dim vArray() As String Dim x As Long  ' Change "*.PPT" to "*.PPTX" or whatever if necessary: EnumerateFiles ActivePresentation.Path & "\", "*.PPT", vArray  With ActivePresentation For x = 1 To UBound(vArray) If Len(vArray(x)) > 0 Then .Slides.InsertFromFile vArray(x), .Slides.Count End If Next End With  End Sub  Sub EnumerateFiles(ByVal sDirectory As String, _ ByVal sFileSpec As String, _ ByRef vArray As Variant) ' collect all files matching the file spec into vArray, an array of strings  Dim sTemp As String ReDim vArray(1 To 1)  sTemp = Dir$(sDirectory & sFileSpec) Do While Len(sTemp) > 0 ' NOT the "mother ship" ... current presentation If sTemp <> ActivePresentation.Name Then ReDim Preserve vArray(1 To UBound(vArray) + 1) vArray(UBound(vArray)) = sDirectory & sTemp End If sTemp = Dir$ Loop  End Sub 
  8. Um sicherzustellen, dass keine ernsthaften Syntaxprobleme mit dem Code auftreten, wählen Sie in der Menüleiste Debug, Compile aus.
  9. Wenn ein Fehler auftritt, überprüfen Sie den Code erneut, oder klicken Sie auf die Schaltfläche Ausführen.
  10. Die Folien werden dem geöffneten Dokument hinzugefügt.

HINWEIS: Hintergrundbilder und einige andere Elemente werden nicht hinzugefügt, wenn Folien aus einer anderen Datei hinzugefügt werden.

Weitere Informationen von:

Danke für deine Antwort. In Powerpoint 2013 muss dies für jede Datei wiederholt werden. Ich suche es in einer Schleife für n Dateien gleichzeitig. threeFourOneSixOneThree vor 7 Jahren 0
Probieren Sie die Makrotechnik aus. Unten angegeben. Sudipta Biswas vor 7 Jahren 0
Sehen Sie, ich habe das Ganze komplett überarbeitet. Es funktioniert. Sudipta Biswas vor 7 Jahren 0
Sie können dieses auch verwenden, aber ich bekomme einige Fehler beim Kompilieren http://stackoverflow.com/questions/5316459/programmatic-combine-slides-from-multiple-presentations-into-a-single-presen Sudipta Biswas vor 7 Jahren 0