Beberapa hari yang lalu, seorang pembaca bertanya tentang ada cara untuk mengautomasikan penciptaan persembahan PowerPoint dari awal dan kemudian dengan cepat menambah slaid pada pembentangan sedia ada itu. Saya fikir skrip itu mungkin berada dalam senarai Macro PowerPoint yang paling berguna.
Seperti yang kami nyatakan pada masa lalu, PowerPoint tidak menyertakan Perakam Makro (itu tidak seperti Excel dan Word, yang kedua-duanya telah dibina dalam perakam untuk Makro). Oleh itu, kita ditinggalkan dengan Visual Basic for Application lama yang boleh kita gunakan untuk mencipta Makro mudah untuk mengautomasikan PowerPoint. Terdapat alternatif lain untuk Automasi PowerPoint, tetapi itu melangkaui skop tutorial ini.
Dalam tutorial ringkas hari ini, kami akan membincangkan tiga kes penggunaan yang berbeza:
- Penciptaan pembentangan baharu (kosong atau menggunakan templat)
- Tambahkan slaid pada pembentangan sedia ada.
- Campuran dua kes yang disebutkan di atas (Buat dari awal dan penambahan slaid)
Mari kita mulakan.
Lihat pada Reben. Jika anda tidak melihat entri Pembangun dalam menu, sebelum memulakan pengekodan anda, anda perlu mendayakan tab pembangun.
Selepas anda membuat menu Pembangun kelihatan Reben anda, teruskan dan tekan pada Pembangun , kemudian tekan pada butang Visual Basic (atau teruskan dan tekan Alt+F11) untuk membuka Visual Basic IDE.
VBA untuk Mencipta Persembahan PowerPoint
- Dalam Editor VB, klik kanan pada VBAProject dan tekan Insert .
- Pilih Modul .
- Tampalkan kod berikut dalam modul yang baru dibuat.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
- Tekan Fail dan kemudian Simpan.
- Untuk Menjalankan kod anda, tekan Run dan kemudian pilih Run Sub/Borang Pengguna (atau hanya F5).
- Tutup editor VB.
VBA untuk memasukkan slaid
- Dalam Editor VB, klik kanan pada VBAProject dan tekan Sisipkan.
- Pilih Modul
- Tampalkan kod berikut dalam modul yang baru dibuat.
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
- Tekan Fail dan kemudian Simpan.
- Untuk Menjalankan kod anda, tekan Run dan kemudian pilih Run Sub/Borang Pengguna (atau hanya F5).
- Tutup editor VB.
Makro untuk menyediakan persembahan baharu dan menambah slaid
Itu hanya mencampurkan dua coretan yang digariskan di atas.
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
Seterusnya anda mungkin melihat tutorial kami tentang mencipta bentuk secara terprogram dalam PowerPoint dengan VBA
Hasilkan Persembahan PowerPoint daripada Excel
Kes terakhir ialah anda ingin membuat persembahan PowerPoint terus daripada hamparan Excel. Anda boleh menggunakan teknik yang sama daripada Word dan Aplikasi Microsoft 365 yang lain.
- Pautkan Hamparan kepada Model Data PowerPoint (dari Alat >> Rujukan)
- Sisipkan butang pada hamparan Excel anda (Pembangun >> Sisipkan dan kemudian pilih Butang Perintah).
- Masukkan kod VBA di bawah ke dalam Projek VBA Hamparan anda (terus ke dalam Helaian atau ke dalam Modul VBA)
- Ubah suai skrip mengikut keperluan.
- Jalankan (tekan F5) dan uji hasilnya.
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
Nikmati 🙂
Kelebihan Excel VBA PowerPoint
- Menggunakan VBA dalam Powerpoint memudahkan pengendalian jika fail ppt mempunyai banyak slaid dengan kandungan yang besar.
- VBA dengan Powerpoint memberikan sentuhan automasi walaupun dengan fungsi terhad yang tersedia.
Keburukan Excel VBA PowerPoint
- Kami perlu memilih Pustaka Objek Microsoft PowerPoint 15.0 daripada pilihan Rujukan yang terdapat dalam pilihan menu Alat, yang kami perlukan pada permulaan contoh-1, setiap kali kami menjalankan kod untuk PowerPoint.
Perkara yang Perlu Diingati
- Simpan fail dalam format Makro-Enable Presentation selepas menulis kod. Ini akan membantu kami mengelakkan kehilangan kod dan menggunakan berbilang masa yang sama pada masa hadapan.
- Ciri pengekodan semula tidak akan berfungsi di sini kerana kita perlu melompat dari Excel ke PowerPoint menukar antara muka antara halaman.
- Sentiasa susun kod sebelum dijalankan. Ini akan membantu anda mencari ralat dalam kod. Ini sangat membantu apabila kita menulis baris besar kod.
- Untuk menjalankan dan melaksanakan kod tersebut, kami perlu membuka helaian excel dengan Carta yang ingin kami tampalkan dalam slaid PowerPoint.
- Kami boleh menyelaraskan carta dalam PowerPoint mengikut keperluan kami.