Yorumları gözden geçirirken, PowerPoint'te Visual Basic Giriş ve Mesaj kutuları ile nasıl çalışılacağına dair birkaç okuyucu sorusu gördüm.
Bu öğreticide, sunum oluşturma işleminizi otomatikleştirirken bu yetenekleri kullanmanıza yardımcı olacak çok temel bir temel bilgi sağlayacağız.
Geliştirici Sekmesini Ayarlama
Öncelikle, PowerPoint için geliştirici ortamını etkinleştirmemiz gerekecek. Geliştirme sekmenizi ayarlamak için bu öğreticiyi izleyin .
PowerPoint'te Geliştirici menüsüne gidin ve Visual Basic'e basın.
Proje ağacında sunumunuza sağ tıklayın, Ekle'ye basın ve ardından Modül'ü seçin. Yeni bir VBA Modülü oluşturulacak, bu, kodunuzu yazacağınız yer.
PowerPoint'te Mesaj Kutuları
Mesaj kutuları bir nevi kendini açıklayıcıdır, amaçları son kullanıcıya bazı faydalı bilgiler göstermektir. Modülünüze aşağıdaki kodu yazın:
Sub simplemessagebox()
MsgBox ("This is a simple message box")
End Sub
F5'e veya Çalıştır'a basın ve sonucu görün:

Mesaj ve Giriş Kutusu örneği
Mesaj Kutularından farklı olarak, kullanıcıdan geri bildirim almak için giriş kutuları kullanılır. Aşağıdaki örneğe bakalım. Komut dosyası, sunuma otomatik olarak yeni slaytlar ekler.
İşte uygulayacağımız şey:
- İlk önce kullanıcıdan eklenecek slayt sayısını isteyeceğiz (bir Giriş Kutusu kullanarak).
- Daha sonra oluşturulacak slayt sayısı hakkında kullanıcıyı bilgilendireceğiz (Mesaj Kutusu kullanarak)
- Son olarak, devam edecek ve slaytları programlı olarak oluşturacaktır.
- Son olarak, değiştirilmiş sunumu kaydedeceğiz
Sub CreateSlidesMessage()
Dim NumSlides As Integer
Dim MsgResult As VbMsgBoxResult
' How many slides to create
NumSlides = InputBox("Enter number of slides to create", "Create Slides")
'User confirmation
MsgResult = MsgBox("Powerpoint will create " & NumSlides & " slides. Proceed?", vbApplicationModal, "Create Slides")
'create the slides
If MsgResult = vbOK Then
For i = 1 To NumSlides
Set NewSlide = ActivePresentation.Slides.Add(Index:=i + 1, Layout:=ppLayoutBlank)
Next i
'Save the Presentation
ActivePresentation.SaveAs("Your Presentation.pptx")
MsgBox ("Presentation Saved.")
End If
End Sub
Umarım bu yardımcı olmuştur, gerektiğinde yorum olarak bırakmaktan çekinmeyin.
MsgBox işlevinden döndürülen değerleri kontrol edin
Kullanıcı etkileşimi için MsgBox iletişim kutusu açıldığında, kullanıcının hangi seçeneği tıkladığını bilmek istiyorsanız, bunu kontrol etmek için aşağıdaki kodu kullanabilirsiniz:
Kod, kullanıcının MsgBox'ta hangi düğmeyi seçtiğini kontrol eder
Her kullanıcının tercihine karşılık gelen farklı kodları çalıştırmaya devam edebilirsiniz, bu VBA kodlarını, Excel Online Öğrenin sayfasında önde gelen uzmanlarla birlikte VBA kurslarında öğrenebilirsiniz.
MsgBox aksanlı Vietnamca'yı destekliyor mu? Cevap hayır, neden? Çünkü Microsoft bunu böyle programladı. Ama başka yolu var mı? Cevap evet, MsgBox VBA ile Vurgulu Vietnamcayı Kullanma makalesini okuyabilirsiniz.
Gist'te görebileceğiniz makaledeki tüm kodlar:
| |
Alt HeoBasicMessageBox() |
| |
MsgBox "Xin chao cac ban da den voi Hoc Excel Online"; |
| |
Son Alt |
| |
|
| |
Alt HeoBasicMessageBoxWithTitle() |
| |
MsgBox "Xin chao cac ban da den voi Hoc Excel Online", , "HEO"; |
| |
Son Alt |
| |
|
| |
Alt HeoBasicMessageBox2() |
| |
MsgBox "Hoc Excel Çevrimiçi", _ |
| |
vbOKİptal + _ |
| |
vbCritical + _ |
| |
vbDefaultButton1 + _ |
| |
vbApplicationModal |
| |
Son Alt |
| |
|
| |
Alt HeoBasicMessageBox3() |
| |
MsgBox "Hoc Excel Çevrimiçi", _ |
| |
vbOKİptal + _ |
| |
vbCritical + _ |
| |
vbDefaultButton1 + _ |
| |
vbSystemModal |
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult1() |
| |
Loş yanıt VbMsgBoxResult olarak |
| |
|
| |
yanıt = MsgBox("Hoc Excel Online", vbYesNo + vbCritical) |
| |
MsgBox yanıtı |
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult2() |
| |
Loş yanıt VbMsgBoxResult olarak |
| |
|
| |
yanıt = MsgBox("Hoc Excel Online", vbYesNo + vbQuestion) |
| |
MsgBox yanıtı |
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult3() |
| |
Loş yanıt VbMsgBoxResult olarak |
| |
|
| |
yanıt = MsgBox("Hoc Excel Online", vbYesNo + vbExclamation) |
| |
MsgBox yanıtı |
| |
|
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult4() |
| |
Loş yanıt VbMsgBoxResult olarak |
| |
|
| |
yanıt = MsgBox("Hoc Excel Online", vbYesNo + vbInformation) |
| |
MsgBox yanıtı |
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult5() |
| |
Loş yanıt VbMsgBoxResult olarak |
| |
yanıt = MsgBox("Hata"; vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton) |
| |
MsgBox yanıtı |
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult6() |
| |
Loş yanıt VbMsgBoxResult olarak |
| |
yanıt = MsgBox("Hata"; vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton) |
| |
MsgBox yanıtı |
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult7() |
| |
Loş yanıt VbMsgBoxResult olarak |
| |
yanıt = MsgBox("Hata"; vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton) |
| |
MsgBox yanıtı |
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult8() |
| |
Loş yanıt VbMsgBoxResult olarak |
| |
yanıt = MsgBox("Hata"; vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton) |
| |
MsgBox yanıtı |
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult9() |
| |
Loş yanıt VbMsgBoxResult olarak |
| |
yanıt = MsgBox("Tekrar denemek ister misiniz?", vbRetryCancel + vbQuestion, "Hata") |
| |
MsgBox yanıtı |
| |
Son Alt |
| |
|
| |
Alt HeoMsgBoxResult10() |
| |
MsgBox "Kritik hata oluştu", vbCritical, "Sistem Hatası"; |
| |
Son Alt |