Πώς να αντιγράψετε πρόσθετες διαφάνειες στην παρουσίασή σας στο PowerPoint με μακροεντολές VBA;

Τελευταία ενημέρωση: Ιούνιος 2020

Ισχύει για: Office 2019 και παλαιότερες εκδόσεις. Μόνο Windows.

Εδώ είναι μια ερώτηση από έναν αναγνώστη:

Ως μέρος της τριμηνιαίας παρουσίασης της έκθεσης μου στη διοίκηση, συχνά χρειάζεται να αντιγράψω πολλές γενικές διαφάνειες πληροφοριών από άλλες παρουσιάσεις. Δεν είναι κάτι σπουδαίο, αλλά θα ήταν σημαντική εξοικονόμηση εάν μπορούσαμε να αυτοματοποιήσουμε αυτήν την άσκηση. Οποιαδήποτε βοήθεια μακροεντολής VBA για να επιτευχθεί αυτό εκτιμάται!

Όπως μόλις αναφέρατε, μπορείτε να αυτοματοποιήσετε την αντιγραφή και επικόλληση των διαφανειών στο PowerPoint χρησιμοποιώντας τη Visual Basic for Applications. Εάν χρειάζεται να δημιουργείτε πολλές παρουσιάσεις κάθε μήνα, αυτός ο αυτοματισμός αντιγραφής/εισαγωγής διαφανειών θα μπορούσε να εξοικονομήσει πολύ χρόνο!

PowerPoint VBA για προσθήκη διαφανειών

Ας συνεχίσουμε με αυτήν την απλή άσκηση.

Αρχικά, βεβαιωθείτε ότι η καρτέλα ανάπτυξή σας είναι ενεργοποιημένη και ορατή. Δείτε πώς να το κάνετε αυτό .

Θα υποθέσω ότι έχετε ήδη δημιουργήσει μια παρουσίαση με δυνατότητα Μακροεντολής (ο τύπος αρχείου είναι .pptm), την οποία έχετε τοποθετήσει στον ίδιο κατάλογο με την παρουσίαση της πηγής σας (την οποία θα αναφέρω ως source.pptm). Δείτε πώς μπορείτε να δημιουργήσετε μια παρουσίαση PowerPoint με VBA .

Αρχικά, ας πάρουμε ένα αντίγραφο ασφαλείας αυτής της παρουσίασης (απλή αντιγραφή και αποθήκευση).

Στη συνέχεια, ας προχωρήσουμε και εισάγουμε την ακόλουθη μακροεντολή σε μια νέα μονάδα VBA στην παρουσίαση προορισμού σας. Όλες οι λεπτομέρειες σχετικά με το πώς να το κάνετε αυτό μπορείτε να βρείτε στο σεμινάριο PowerPoint VBA .

Εδώ είναι ο κώδικας VBA που θα χρειαστείτε για να αντιγράψετε και να επικολλήσετε αυτόματα τις διαφάνειες.

Δυο υποθέσεις που έκανα:

  • Η παρουσίαση της πηγής σας ονομάζεται source.pptm
  •  Θα επικολλήσετε διαφάνειες 2-4 από την παρουσίαση πηγής
  • Θα τοποθετήσετε τις αντιγραμμένες διαφάνειες ξεκινώντας τη διαφάνεια 5.

Sub InsertFromOtherPres()

' This short VBA macro copies slides from one presentation and inserts them into another

ActivePresentation.Slides.InsertFromFile FileName:="source.pptm", Index:=1, SlideStart:=2, 
SlideEnd:=4

End Sub

Προφανώς, μη διστάσετε να αλλάξετε την ευρετηρίαση του αριθμού διαφάνειας στον κώδικα, ώστε να ταιριάζουν στις απαιτήσεις σας.

Μπορείτε να κάνετε επαναφορά σε πολλές παρουσιάσεις και να εισαγάγετε συγκεκριμένες διαφάνειες από κάθε μία στην αναφορά διαχείρισης.

PowerPoint VBA για αντιγραφή διαφανειών

Αντί να αντιγράψετε διαφάνειες σε άλλη παρουσίαση, ίσως θέλετε να κλωνοποιήσετε μία ή περισσότερες διαφάνειες στην παρουσίασή σας:

Sub CopySlides()

' Short snippet to duplicate the third slide in a presentation, change the index/es accrodingly

ActivePresentation.Slides(3).Duplicate

End Sub

Αυτά ήταν μόνο μερικά απλά παραδείγματα αυτοματισμού PowerPoint. Οι αναγνώστες που αναζητούν συγκεκριμένες ερωτήσεις, μη διστάσετε να στείλετε μια ερώτηση μέσω της σελίδας Επικοινωνία.

Ελπίζω να βοηθήσει 🙂

Διατήρηση μορφοποίησης κατά την αντιγραφή διαφανειών

Το πρόβλημα με το προηγούμενο παράδειγμα ήταν ότι η αρχική μορφοποίηση θέματος παρουσιάσεων δεν αντιγράφηκε. Ας υποθέσουμε ότι τα 2 φύλλα είχαν διαφορετική μορφοποίηση, αυτό θα είχε συμβεί:

Παράδειγμα 1

 

Sub main()

Dim objPresentation As Presentation

Dim i As Integer

'open the target presentation

Set objPresentation = Presentations.Open("C:\2.pptx")

For i = 1 To objPresentation.Slides.Count

    objPresentation.Slides.Item(i).Copy

    Presentations.Item(1).Slides.Paste

Next i

objPresentation.Close

End Sub

Πριν εκτελέσετε τον Κώδικα
Αυτή είναι η παρουσίαση με τη διαφάνεια που θέλουμε να αντιγράψουμε: Αποτέλεσμα: Για να ξεπεράσετε αυτό το πρόβλημα, μπορείτε να χρησιμοποιήσετε τον παρακάτω κώδικα:
Διαφάνειες προς αντιγραφή

Αποτέλεσμα

 

Sub Example2()

Dim objPresentation As Presentation

Dim i As Integer

'open the target presentation

Set objPresentation = Presentations.Open("C:\2.pptx")

For i = 1 To objPresentation.Slides.Count

    objPresentation.Slides.Item(i).Copy

    Presentations.Item(1).Slides.Paste

    Presentations.Item(1).Slides.Item(Presentations.Item(1).Slides.Count).Design = _

        objPresentation.Slides.Item(i).Design

Next i

objPresentation.Close

End Sub

Εκτός από την αντιγραφή της διαφάνειας, ο παραπάνω κώδικας αντιγράφει το σχέδιο. Εάν θέλετε να το κάνετε αυτό με μη αυτόματο τρόπο, θα αντιγράψατε το slidemaster στη νέα παρουσίαση. Δεν μπορείτε να αντιγράψετε το slidemaster χρησιμοποιώντας VBA, αλλά μπορείτε να ορίσετε την ιδιότητα σχεδίασης των διαφανειών.


Πώς να ορίσετε ένα χρώμα κελιού Excel σύμφωνα με μια συνθήκη με το VBA;

Πώς να ορίσετε ένα χρώμα κελιού Excel σύμφωνα με μια συνθήκη με το VBA;

Ανακαλύψτε πώς να ρυθμίσετε το χρώμα κελιού Excel ανάλογα με μια συνθήκη χρησιμοποιώντας VBA.

Οδηγίες για την κοπή εικόνων σε κύκλους στο PowerPoint

Οδηγίες για την κοπή εικόνων σε κύκλους στο PowerPoint

Οδηγίες για την κοπή εικόνων σε κύκλους στο PowerPoint. Ανακαλύψτε πόσο απλά μπορείτε να κόψετε φωτογραφίες σε κύκλους για εντυπωσιακές παρουσιάσεις.

Πώς να γράψετε από δεξιά προς τα αριστερά στο Microsoft Office 2016 , 2019 / 365;

Πώς να γράψετε από δεξιά προς τα αριστερά στο Microsoft Office 2016 , 2019 / 365;

Μάθετε πώς να κάνετε εναλλαγή από πληκτρολόγια LTR σε RTL στο Microsoft Word.

Πώς να χρησιμοποιήσετε διαφορετικές γραμματοσειρές στο Discord

Πώς να χρησιμοποιήσετε διαφορετικές γραμματοσειρές στο Discord

Μάθετε πώς να χρησιμοποιήσετε διαφορετικές γραμματοσειρές στο Discord. Οι επιλογές γραμματοσειρών είναι ποικίλες και πλούσιες.

Κορυφαίες εφαρμογές κοπής ήχου κλήσης στο Android

Κορυφαίες εφαρμογές κοπής ήχου κλήσης στο Android

Κορυφαίες εφαρμογές κοπής ήχων κλήσης στο Android για τη δημιουργία μοναδικών ήχων κλήσης. Ανακαλύψτε τις καλύτερες επιλογές για να προσαρμόσετε το τηλέφωνό σας.

Οδηγίες για την αλλαγή του ονόματος της ομάδας συνομιλίας του Facebook Messenger

Οδηγίες για την αλλαγή του ονόματος της ομάδας συνομιλίας του Facebook Messenger

Οδηγίες για την αλλαγή του ονόματος της ομάδας συνομιλίας στο Facebook Messenger. Αυτή τη στιγμή στην ομαδική συνομιλία του Facebook Messenger, μπορούμε εύκολα να αλλάξουμε το όνομα της ομάδας συνομιλίας.

Οδηγίες για την επαναφορά των διαγραμμένων αναρτήσεων στο Facebook

Οδηγίες για την επαναφορά των διαγραμμένων αναρτήσεων στο Facebook

Ανακαλύψτε πώς να επαναφέρετε διαγραμμένες αναρτήσεις στο Facebook εύκολα και γρήγορα. Μαθαίνετε όλες τις λεπτομέρειες για την ανάκτηση διαγραμμένων αναρτήσεων

Οδηγίες για ακρόαση μουσικής στους Χάρτες Google

Οδηγίες για ακρόαση μουσικής στους Χάρτες Google

Οδηγίες για την ακρόαση μουσικής στους Χάρτες Google Επί του παρόντος, οι χρήστες μπορούν να ταξιδέψουν και να ακούσουν μουσική χρησιμοποιώντας την εφαρμογή Google Map στο iPhone. Σήμερα, το WebTech360 σας προσκαλεί

Οδηγίες για τη χρήση της υπηρεσίας ηλεκτρονικής αποθήκευσης LifeBOX - Viettel

Οδηγίες για τη χρήση της υπηρεσίας ηλεκτρονικής αποθήκευσης LifeBOX - Viettel

Οδηγίες για τη χρήση του LifeBOX - Η διαδικτυακή υπηρεσία αποθήκευσης της Viettel, το LifeBOX είναι μια νέα διαδικτυακή υπηρεσία αποθήκευσης της Viettel με πολλά ανώτερα χαρακτηριστικά

Πώς να ενημερώσετε την κατάσταση στο Facebook Messenger

Πώς να ενημερώσετε την κατάσταση στο Facebook Messenger

Πώς να ενημερώσετε την κατάσταση στο Facebook Messenger, το Facebook Messenger στην πιο πρόσφατη έκδοση παρείχε στους χρήστες μια εξαιρετικά χρήσιμη δυνατότητα: αλλαγή