Birkaç gün önce bir okuyucu, PowerPoint sunumlarının sıfırdan oluşturulmasını otomatikleştirmenin ve ardından mevcut sunuma hızlı bir şekilde slayt eklemenin bir yolu olup olmadığını sordu. Bu komut dosyası, en kullanışlı PowerPoint Makroları listesinde oldukça yüksek olabilir.
Geçmişte belirttiğimiz gibi, PowerPoint bir Makro Kaydedici içermez (bu, her ikisi de Makro için yerleşik kaydedicilere sahip olan Excel ve Word'den farklıdır). Bu nedenle, PowerPoint'i otomatikleştirmek için basit Makrolar oluşturmak için kullanabileceğimiz eski Visual Basic for Application kaldı. PowerPoint Otomasyonu için başka alternatifler de vardır, ancak bunlar bu eğitimin kapsamını aşmaktadır.
Bugünün kısa eğitiminde, üç farklı kullanım örneğini inceleyeceğiz:
- Yeni sunum oluşturma (boş veya şablon kullanarak)
- Mevcut bir sunuya slayt ekleyin.
- Yukarıda belirtilen iki durumun bir karışımı (Sıfırdan oluştur ve slayt ekleme)
Başlayalım.
Şerit'e bakın. Menüde bir Geliştirici girişi görmüyorsanız, kodlamanıza başlamadan önce geliştirici sekmesini etkinleştirmeniz gerekir.
Geliştirici menüsünü Şerit'inizde görünür hale getirdikten sonra, devam edin ve Developer'a basın , ardından Visual Basic IDE'yi açmak için Visual Basic düğmesine basın (veya devam edin ve Alt+F11'e basın).
PowerPoint Sunumu Oluşturmak için VBA
- VB Düzenleyicide, VBAProject'e sağ tıklayın ve Ekle'ye basın .
- Modül'ü seçin .
- Yeni oluşturulan modüle aşağıdaki kodu yapıştırın.
Sub CreatePresentation()
Dim NewPres as Presentation
Set NewPres = Presentations.Add
NewPres.SaveAs("MyPresentation.pptx")
End Sub
- Dosya'ya ve ardından Kaydet'e basın.
- Kodunuzu çalıştırmak için Çalıştır'a basın ve ardından Alt/Kullanıcı Formu Çalıştır'ı (veya sadece F5) seçin.
- VB düzenleyicisini kapatın.
Slayt eklemek için VBA
- VB Düzenleyicide, VBAProject'e sağ tıklayın ve Ekle'ye basın.
- Modül Seç
- Yeni oluşturulan modüle aşağıdaki kodu yapıştırın.
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
- Dosya'ya ve ardından Kaydet'e basın.
- Kodunuzu çalıştırmak için Çalıştır'a basın ve ardından Alt/Kullanıcı Formu Çalıştır'ı (veya sadece F5) seçin.
- VB düzenleyicisini kapatın.
Yeni bir sunum ayarlamak ve slayt eklemek için makro
Bu sadece yukarıda özetlenen iki parçacığı karıştırmak olur.
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
Ardından , VBA ile PowerPoint'te programlı olarak şekiller oluşturmaya ilişkin eğiticimize bakabilirsiniz.
Excel'den PowerPoint Sunumu Oluşturun
Son durum, doğrudan bir Excel elektronik tablosundan bir PowerPoint sunumu oluşturmak istemenizdir. Aynı tekniği Word ve diğer Microsoft 365 Uygulamalarında da kullanabilirsiniz.
- Elektronik Tabloyu PowerPoint Veri Modeline bağlayın (Araçlar >> Referanslar'dan)
- Excel elektronik tablonuza bir düğme ekleyin (Geliştirici >> Ekle ve ardından bir Komut Düğmesi seçin).
- Aşağıdaki VBA kodunu Elektronik Tablo VBA Projenize ekleyin (doğrudan Sayfaya veya bir VBA Modülüne)
- Komut dosyasını gerektiği gibi değiştirin.
- Çalıştırın (F5'e basın) ve sonucu test edin.
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
tadını çıkarın 🙂
Excel VBA PowerPoint'in Artıları
- Powerpoint'te VBA'yı kullanmak, bir ppt dosyasında büyük içeriğe sahip çok sayıda slayt varsa, kullanımı kolaylaştırır.
- Powerpoint'li VBA, sınırlı işlevlerle bile bir miktar otomasyon sağlar.
Excel VBA PowerPoint'in Eksileri
- Araç menü seçeneğinde yer alan Referans seçeneğinden Microsoft PowerPoint 15.0 Nesne Kitaplığı 'nı seçmemiz gerekiyor. örnek-1, PowerPoint kodunu her çalıştırdığımızda.
Hatırlanacak şeyler
- Kodu yazdıktan sonra dosyayı Makro Etkin Sunum formatında kaydedin. Bu, kodu kaybetmemizi ve gelecekte aynı kodu birden çok kez kullanmamızı önlememize yardımcı olacaktır.
- Sayfalar arasındaki arayüzü değiştirerek Excel'den PowerPoint'e geçmemiz gerektiğinden, yeniden kodlama özelliği burada çalışmayacaktır.
- Çalıştırmadan önce daima kodu derleyin. Bu, koddaki hatayı bulmanıza yardımcı olacaktır. Büyük kod satırları yazdığımızda bu oldukça faydalıdır.
- Kodu çalıştırmak ve uygulamak için PowerPoint slaytına yapıştırmak istediğimiz Grafik içeren excel sayfasını açmamız gerekir.
- Grafiği PowerPoint'te ihtiyaçlarımıza göre hizalayabiliriz.