Pārlūkojot komentārus, esmu redzējis dažus lasītāju jautājumus par to, kā strādāt ar Visual Basic ievades un ziņojumu lodziņiem programmā PowerPoint.
Šajā apmācībā mēs sniegsim ļoti pamatzināšanas, kas palīdzēs jums izmantot šīs iespējas, automatizējot prezentācijas izveidi.
Cilnes Izstrādātājs iestatīšana
Vispirms mums būs jāiespējo PowerPoint izstrādātāja vide. Izpildiet šo pamācību, lai iestatītu izstrādes cilni.
Programmā PowerPoint atveriet izvēlni Izstrādātājs un nospiediet Visual Basic.
Projektu kokā ar peles labo pogu noklikšķiniet uz prezentācijas, nospiediet Ievietot un pēc tam izvēlieties Modulis. Tiks izveidots jauns VBA modulis, kurā jūs ierakstīsit savu kodu.
Ziņojumu kastes programmā PowerPoint
Ziņojumu kastes ir pašsaprotamas, to mērķis ir parādīt kādu noderīgu informāciju gala lietotājam. Savā modulī ierakstiet šādu kodu:
Sub simplemessagebox()
MsgBox ("This is a simple message box")
End Sub
Nospiediet F5 vai Palaist un skatiet rezultātu:

Ziņojumu un ievades lodziņa piemērs
Atšķirībā no ziņojumu kastēm, ievades lodziņi tiek izmantoti, lai iegūtu atsauksmes no lietotāja. Apskatīsim tālāk sniegto piemēru. Skripts prezentācijā automātiski ievieto jaunus slaidus.
Lūk, ko mēs ieviesīsim:
- Vispirms lietotājam tiks prasīts pievienot pievienojamo slaidu skaitu (izmantojot ievades lodziņu).
- Pēc tam mēs informēsim lietotāju par veidojamo slaidu skaitu (izmantojot ziņojumu lodziņu).
- Visbeidzot, tiks izveidots programmatiski slaidi.
- Pēdējā saglabāsim modificēto prezentāciju
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
Cerams, ka tas palīdzēja, ja nepieciešams, atstājiet komentārus.
Pārbaudiet vērtības, kas tiek atgrieztas no funkcijas MsgBox
Kad tiek parādīts dialoglodziņš MsgBox, lai veiktu lietotāja mijiedarbību, ja vēlaties uzzināt, uz kuras opcijas lietotājs noklikšķināja, varat izmantot šo kodu, lai pārbaudītu, vai:
Kods pārbauda, kādu pogu lietotājs izvēlas MsgBox
Atbilstoši katra lietotāja izvēlei varat turpināt palaist dažādus kodus, šos VBA kodus, varat mācīties VBA kursos kopā ar vadošajiem ekspertiem vietnē Learn Excel Online.
Vai MsgBox atbalsta vjetnamiešu valodu ar akcentiem? Atbilde ir nē, kāpēc? Jo Microsoft to tā ieprogrammēja. Bet vai ir kāds cits veids? Atbilde ir jā, varat izlasīt rakstu Vjetnamiešu valodas diakritiskā izmantošana ar MsgBox VBA
Visu rakstā esošo kodu varat redzēt Gist:
| |
Sub HeoBasicMessageBox() |
| |
MsgBox "Xin chao cac ban da den voi Hoc Excel Online" |
| |
Beigt apakš |
| |
|
| |
Sub HeoBasicMessageBoxWithTitle() |
| |
MsgBox "Xin chao cac ban da den voi Hoc Excel Online", , "HEO" |
| |
Beigt apakš |
| |
|
| |
Sub HeoBasicMessageBox2() |
| |
MsgBox "Hoc Excel Online", _ |
| |
vbOKCancel + _ |
| |
vbCritical + _ |
| |
vbDefaultButton1 + _ |
| |
vbApplicationModal |
| |
Beigt apakš |
| |
|
| |
Sub HeoBasicMessageBox3() |
| |
MsgBox "Hoc Excel Online", _ |
| |
vbOKCancel + _ |
| |
vbCritical + _ |
| |
vbDefaultButton1 + _ |
| |
vbSystemModal |
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult1() |
| |
Blāva reakcija kā VbMsgBoxResult |
| |
|
| |
atbilde = MsgBox ("Hoc Excel Online", vbYesNo + vbCritical) |
| |
MsgBox atbilde |
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult2() |
| |
Blāva reakcija kā VbMsgBoxResult |
| |
|
| |
atbilde = MsgBox ("Hoc Excel Online", vbYesNo + vbQuestion) |
| |
MsgBox atbilde |
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult3() |
| |
Blāva reakcija kā VbMsgBoxResult |
| |
|
| |
atbilde = MsgBox ("Hoc Excel Online", vbYesNo + vbClamation) |
| |
MsgBox atbilde |
| |
|
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult4() |
| |
Blāva reakcija kā VbMsgBoxResult |
| |
|
| |
atbilde = MsgBox ("Hoc Excel Online", vbYesNo + vbInformation) |
| |
MsgBox atbilde |
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult5() |
| |
Blāva reakcija kā VbMsgBoxResult |
| |
atbilde = MsgBox("Kļūda", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton) |
| |
MsgBox atbilde |
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult6() |
| |
Blāva reakcija kā VbMsgBoxResult |
| |
atbilde = MsgBox("Kļūda", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton) |
| |
MsgBox atbilde |
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult7() |
| |
Blāva reakcija kā VbMsgBoxResult |
| |
atbilde = MsgBox("Kļūda", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton) |
| |
MsgBox atbilde |
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult8() |
| |
Blāva reakcija kā VbMsgBoxResult |
| |
atbilde = MsgBox("Kļūda", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton) |
| |
MsgBox atbilde |
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult9() |
| |
Blāva reakcija kā VbMsgBoxResult |
| |
atbilde = MsgBox("Vai vēlaties mēģināt vēlreiz?", vbRetryCancel + vbQuestion, "Error") |
| |
MsgBox atbilde |
| |
Beigt apakš |
| |
|
| |
Sub HeoMsgBoxResult10() |
| |
MsgBox "Radās kritiska kļūda", vbCritical, "System Error" |
| |
Beigt apakš |