Πριν από μερικές ημέρες, ένας αναγνώστης ρώτησε ότι υπάρχει ένας τρόπος να αυτοματοποιηθεί η δημιουργία παρουσιάσεων PowerPoint από την αρχή και στη συνέχεια να προστεθούν γρήγορα διαφάνειες σε αυτήν την υπάρχουσα παρουσίαση. Νομίζω ότι αυτό το σενάριο μπορεί να είναι πολύ στη λίστα με τις πιο χρήσιμες μακροεντολές PowerPoint.
Όπως αναφέραμε στο παρελθόν, το PowerPoint δεν περιλαμβάνει Macro Recorder (σε αντίθεση με το Excel και το Word, που και τα δύο έχουν ενσωματώσει συσκευές εγγραφής για Macro). Επομένως, έχουμε μείνει με την παλιά καλή Visual Basic για Εφαρμογή που μπορούμε να χρησιμοποιήσουμε για να δημιουργήσουμε απλές μακροεντολές για την αυτοματοποίηση του PowerPoint. Υπάρχουν και άλλες εναλλακτικές λύσεις για το PowerPoint Automation, αλλά αυτές υπερβαίνουν το πεδίο εφαρμογής αυτού του σεμιναρίου.
Στο σημερινό σύντομο σεμινάριο, θα εξετάσουμε τρεις διαφορετικές περιπτώσεις χρήσης:
- Δημιουργία νέας παρουσίασης (κενή ή με χρήση προτύπου)
- Προσθήκη διαφανειών σε μια υπάρχουσα παρουσίαση.
- Ένας συνδυασμός των δύο παραπάνω περιπτώσεων (Δημιουργία από την αρχή και προσθήκη διαφανειών)
Ας αρχίσουμε.
Κοιτάξτε την Κορδέλα. Εάν δεν βλέπετε την καταχώριση προγραμματιστή στο μενού, πριν ξεκινήσετε την κωδικοποίηση, θα πρέπει να ενεργοποιήσετε την καρτέλα προγραμματιστή.
Αφού κάνετε το μενού προγραμματιστή ορατό την Κορδέλα σας, προχωρήστε και πατήστε Προγραμματιστής και μετά πατήστε το κουμπί της Visual Basic (ή απλώς προχωρήστε και πατήστε Alt+F11) για να ανοίξετε το IDE της Visual Basic.
VBA για τη δημιουργία παρουσίασης PowerPoint
- Στον Επεξεργαστή VB, κάντε δεξί κλικ στο VBAProject και πατήστε Εισαγωγή .
- Επιλέξτε Μονάδα .
- Επικολλήστε τον ακόλουθο κώδικα στη νέα μονάδα δημιουργίας.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
- Πατήστε Αρχείο και μετά Αποθήκευση.
- Για να εκτελέσετε τον κωδικό σας, πατήστε Εκτέλεση και, στη συνέχεια, επιλέξτε Εκτέλεση φόρμας υπο/χρήστη (ή απλά F5).
- Κλείστε το πρόγραμμα επεξεργασίας VB.
VBA για εισαγωγή διαφανειών
- Στον Επεξεργαστή VB, κάντε δεξί κλικ στο VBAProject και πατήστε Εισαγωγή.
- Επιλέξτε Μονάδα
- Επικολλήστε τον ακόλουθο κώδικα στη νέα μονάδα δημιουργίας.
Sub CreateSlide()
Dim NewSlide as Slide
'This statement ads a title slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
End Sub
- Πατήστε Αρχείο και μετά Αποθήκευση.
- Για να εκτελέσετε τον κωδικό σας, πατήστε Εκτέλεση και, στη συνέχεια, επιλέξτε Εκτέλεση φόρμας υπο/χρήστη (ή απλά F5).
- Κλείστε το πρόγραμμα επεξεργασίας VB.
Μακροεντολή για να ρυθμίσετε μια νέα παρουσίαση και να προσθέσετε διαφάνειες
Αυτό θα ήταν απλώς η ανάμειξη των δύο αποσπασμάτων που περιγράφονται παραπάνω.
Sub CreatePres_AddSlides()
Dim NewPres as Presentation
Dim NewSlide as Slide
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
' Title Slide
Set NewSlide = ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
'This statement adds a blank slide in the second place
Set NewSlide = ActivePresentation.Slides.Add(Index:=2, Layout:=ppLayoutBlank)
'Save the new PowerPoint file
NewPres.SaveAs("MyPresentation.pptx")
End Sub
Στη συνέχεια, μπορείτε να δείτε το σεμινάριο μας σχετικά με τη δημιουργία σχημάτων μέσω προγραμματισμού στο PowerPoint με VBA
Δημιουργήστε μια παρουσίαση PowerPoint από το Excel
Η τελευταία περίπτωση είναι ότι θέλετε να δημιουργήσετε μια παρουσίαση PowerPoint απευθείας από ένα υπολογιστικό φύλλο του Excel. Μπορείτε να χρησιμοποιήσετε την ίδια τεχνική από το Word και άλλες εφαρμογές του Microsoft 365.
- Συνδέστε το υπολογιστικό φύλλο με το μοντέλο δεδομένων PowerPoint (από Εργαλεία>>Αναφορές)
- Εισαγάγετε ένα κουμπί στο υπολογιστικό φύλλο του Excel (Προγραμματιστής >> Εισαγωγή και, στη συνέχεια, επιλέξτε ένα κουμπί εντολών).
- Εισαγάγετε τον παρακάτω κώδικα VBA στο Spreadsheet VBA Project (απευθείας στο φύλλο ή σε μια μονάδα VBA)
- Τροποποιήστε το σενάριο όπως απαιτείται.
- Εκτελέστε (πατήστε F5) και δοκιμάστε το αποτέλεσμα.
Sub CreatePresentationFromExcel()
Dim MyPPt As PowerPoint.Application
Dim NewPres As PowerPoint.Presentation
Dim NewSlide As Slide
Set MyPPt = CreateObject("PowerPoint.Application")
Set NewPres = MyPPt.Presentations.Add
Set NewSlide = MyPPt.ActivePresentation.Slides.Add(Index:=1, Layout:=ppLayoutTitle)
NewPres.SaveAs ("MyPresentation.pptx")
NewPres.Close
MyPPt.Quit
MsgBox ("Presentation saved")
End Sub
Απολαύστε 🙂
Πλεονεκτήματα του Excel VBA PowerPoint
- Η χρήση VBA στο Powerpoint διευκολύνει τον χειρισμό εάν ένα αρχείο ppt έχει τόσες πολλές διαφάνειες με τεράστιο περιεχόμενο.
- Το VBA με Powerpoint δίνει μια νότα αυτοματισμού ακόμη και με περιορισμένες διαθέσιμες λειτουργίες.
Μειονεκτήματα του Excel VBA PowerPoint
- Πρέπει να επιλέξουμε τη Βιβλιοθήκη αντικειμένων του Microsoft PowerPoint 15.0 από την επιλογή Αναφορά που βρίσκεται στο μενού Εργαλείο, την οποία χρειαζόμαστε στην αρχή του παράδειγμα-1, κάθε φορά που εκτελούμε τον κώδικα για το PowerPoint.
Πράγματα που πρέπει να θυμάστε
- Αποθηκεύστε το αρχείο σε μορφή Macro-Enable Presentation αφού γράψετε τον κώδικα. Αυτό θα μας βοηθήσει να αποφύγουμε την απώλεια του κώδικα και τη χρήση του ίδιου πολλαπλού χρόνου στο μέλλον.
- Η δυνατότητα επανακωδικοποίησης δεν θα λειτουργήσει εδώ, καθώς πρέπει να μεταβούμε από το Excel στο PowerPoint αλλάζοντας τη διεπαφή μεταξύ των σελίδων.
- Να μεταγλωττίζετε πάντα τον κώδικα πριν από την εκτέλεση. Αυτό θα σας βοηθήσει να βρείτε το σφάλμα στον κώδικα. Αυτό είναι πολύ χρήσιμο όταν γράφουμε μεγάλες γραμμές κώδικα.
- Για να τρέξουμε και να εφαρμόσουμε τον κώδικα πρέπει να ανοίξουμε το φύλλο excel με Chart που θέλουμε να το επικολλήσουμε στη διαφάνεια του PowerPoint.
- Μπορούμε να ευθυγραμμίσουμε το γράφημα στο PowerPoint σύμφωνα με τις ανάγκες μας.