Kaip dirbti su pranešimų ir įvesties laukeliais „PowerPoint VBA“?

Peržiūrėdamas komentarus mačiau keletą skaitytojų klausimų, kaip dirbti su „Visual Basic“ įvesties ir pranešimų laukeliais „PowerPoint“.

Šioje pamokoje pateiksime labai pagrindines žinias, kurios padės jums pasinaudoti šiomis galimybėmis automatizuojant pristatymo kūrimą.

Kūrėjo skirtuko nustatymas

Pirmiausia turėsime įgalinti „PowerPoint“ kūrėjo aplinką. Vykdykite šią mokymo programą, kad nustatytumėte kūrimo skirtuką.

„PowerPoint“ eikite į kūrėjo meniu ir paspauskite „Visual Basic“.

Projekto medyje dešiniuoju pelės mygtuku spustelėkite pristatymą, paspauskite Įterpti ir pasirinkite Modulis. Bus sukurtas naujas VBA modulis, kuriame rašysite savo kodą.

„PowerPoint“ pranešimų dėžutės

Pranešimų dėžutės yra savaime suprantamos, jų tikslas yra pateikti naudingos informacijos galutiniam vartotojui. Savo modulyje parašykite šį kodą:

Sub simplemessagebox()
MsgBox ("This is a simple message box")
End Sub

Paspauskite F5 arba Vykdyti ir pamatysite rezultatą:

Kaip dirbti su pranešimų ir įvesties laukeliais „PowerPoint VBA“?

Pranešimo ir įvesties dėžutės pavyzdys

Skirtingai nei pranešimų dėžutės, įvesties laukeliai naudojami norint gauti vartotojo atsiliepimą. Pažiūrėkime į toliau pateiktą pavyzdį. Scenarijus automatiškai įterpia naujas skaidres į pristatymą.

Štai ką mes įgyvendinsime:

  1. Pirmiausia paraginsime vartotoją pridėti skaidrių skaičių (naudodami įvesties laukelį).
  2. Tada informuosime vartotoją apie sukurtų skaidrių skaičių (naudodami pranešimų laukelį)
  3. Paskutinis, eis į priekį ir skaidres sukurs programiškai.
  4. Galiausiai išsaugosime pakeistą pristatymą


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

Tikimės, kad tai padėjo, jei reikia, palikite komentarus.

Check the values returned from the MsgBox function

When the MsgBox dialog box pops up for user interaction, you want to know which option the user clicked, you can use the following code to check that:

The code checks what button the user chooses on MsgBox

Corresponding to each user's choice, you can continue to run different codes, these VBA codes, you can learn in VBA courses with leading experts at Learn Excel Online.

Does MsgBox support accented Vietnamese? The answer is no, why? Because Microsoft programmed it like that. But is there any other way? The answer is yes, you can read the article Using accented Vietnamese with MsgBox VBA

All the code in the article you can see at Gist:

  Sub HeoBasicMessageBox()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online"
  End Sub
   
  Sub HeoBasicMessageBoxWithTitle()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online", , "HEO"
  End Sub
   
  Sub HeoBasicMessageBox2()
  MsgBox "Hoc Excel Online", _
  vbOKCancel + _
  vbCritical + _
  vbDefaultButton1 + _
  vbApplicationModal
  End Sub
   
  Sub HeoBasicMessageBox3()
  MsgBox "Hoc Excel Online", _
  vbOKCancel + _
  vbCritical + _
  vbDefaultButton1 + _
  vbSystemModal
  End Sub
   
  Sub HeoMsgBoxResult1()
  Dim response As VbMsgBoxResult
   
  response = MsgBox("Hoc Excel Online", vbYesNo + vbCritical)
  MsgBox response
  End Sub
   
  Sub HeoMsgBoxResult2()
  Dim response As VbMsgBoxResult
   
  response = MsgBox("Hoc Excel Online", vbYesNo + vbQuestion)
  MsgBox response
  End Sub
   
  Sub HeoMsgBoxResult3()
  Dim response As VbMsgBoxResult
   
  response = MsgBox("Hoc Excel Online", vbYesNo + vbExclamation)
  MsgBox response
   
  End Sub
   
  Sub HeoMsgBoxResult4()
  Dim response As VbMsgBoxResult
   
  response = MsgBox("Hoc Excel Online", vbYesNo + vbInformation)
  MsgBox response
  End Sub
   
  Sub HeoMsgBoxResult5()
  Dim response As VbMsgBoxResult
  response = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton)
  MsgBox response
  End Sub
   
  Sub HeoMsgBoxResult6()
  Dim response As VbMsgBoxResult
  response = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton)
  MsgBox response
  End Sub
   
  Sub HeoMsgBoxResult7()
  Dim response As VbMsgBoxResult
  response = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton)
  MsgBox response
  End Sub
   
  Sub HeoMsgBoxResult8()
  Dim response As VbMsgBoxResult
  response = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton)
  MsgBox response
  End Sub
   
  Sub HeoMsgBoxResult9()
  Dim response As VbMsgBoxResult
  response = MsgBox("Want to try again?", vbRetryCancel + vbQuestion, "Error")
  MsgBox response
  End Sub
   
  Sub HeoMsgBoxResult10()
  MsgBox "Critical error occurred", vbCritical, "System Error"
  End Sub

Palikti komentarą

Kaip išspręsti „Outlook negali siųsti el. laiškų, bet gali juos gauti“ klaidą

Kaip išspręsti „Outlook negali siųsti el. laiškų, bet gali juos gauti“ klaidą

Ištaisykite „Outlook“, kai galite gauti el. laiškus, bet negalite jų siųsti. Patikrinkite išsiuntimo dėžutę, atjungties režimą, prisijungimą, SMTP nustatymus, profilius ir „Microsoft 365“ pakeitimus.

Paprastas dvisavaitinis atlyginimų apskaitos „Excel“ šablonas mažoms komandoms: praktinis diegimo vadovas

Paprastas dvisavaitinis atlyginimų apskaitos „Excel“ šablonas mažoms komandoms: praktinis diegimo vadovas

Sukurkite paprastą dvisavaitinį atlyginimų apskaitos šabloną „Excel“ mažai komandai, įtraukdami darbo valandas, atlyginimus, išskaičiavimus, peržiūros žymes, suvestines ir dokumentų saugojimo gaires.

Paprastas naujų darbuotojų įtraukimo mokymų pristatymo šablonas: 12 skaidrių praktinis planas

Paprastas naujų darbuotojų įtraukimo mokymų pristatymo šablonas: 12 skaidrių praktinis planas

Sukurkite paprastą naujų darbuotojų įtraukimo pristatymą naudodami praktinę 12 skaidrių struktūrą, apimančią pareigų lūkesčius, įrankius, saugumą, politiką, saugą ir pirmosios savaitės veiksmus.

Kaip eksportuoti „Salesforce“ kontaktus į švarų „Excel“ formatą nesugadinant ID ar telefono numerių

Kaip eksportuoti „Salesforce“ kontaktus į švarų „Excel“ formatą nesugadinant ID ar telefono numerių

Švariai eksportuokite „Salesforce“ kontaktus į „Excel“: sukurkite tinkamą ataskaitą, eksportuokite kaip „Details Only CSV“, importuokite naudodami „Power Query“, išsaugokite ID ir pradinus nulius, saugiai pašalinkite dublikatus ir patikrinkite rezultatą.

Spausdinamas savaitinis valymo tvarkaraščio šablonas „Airbnb“ šeimininkams (Word ir PDF)

Spausdinamas savaitinis valymo tvarkaraščio šablonas „Airbnb“ šeimininkams (Word ir PDF)

Naudokite šį spausdinamą savaitinį valymo tvarkaraštį „Airbnb“ šeimininkams, kad organizuotumėte apsikeitimo valymą, giliajį valymą, atsargų papildymą, saugos patikras ir spausdinimą iš Word į PDF.

Nemokamas mėnesinių sąskaitų kalendoriaus organizatoriaus šablonas „Excel“: praktinis 2026 m. nustatymas

Nemokamas mėnesinių sąskaitų kalendoriaus organizatoriaus šablonas „Excel“: praktinis 2026 m. nustatymas

Organizuokite mėnesines sąskaitas „Excel“ naudodami nemokamą sąskaitų kalendoriaus išdėstymą, mokėjimo terminų stebėjimą, būsenos formules, automatinio mokėjimo laukus ir praktinius pinigų srautų patarimus.

Excel formulės neapskaičiuoja automatiškai? Ištaisykite tai per 3 paprastus veiksmus

Excel formulės neapskaičiuoja automatiškai? Ištaisykite tai per 3 paprastus veiksmus

Ištaisykite Excel formules, kurios neapskaičiuoja automatiškai, atlikdami tris veiksmus: įjunkite automatinį skaičiavimą, perskaičiuokite ir sutvarkykite formulių langelius.

Nepriklausomo rangovo išlaidų sekimo šablonas JAV laisvai samdomiems darbuotojams: ką sekti 2026 m.

Nepriklausomo rangovo išlaidų sekimo šablonas JAV laisvai samdomiems darbuotojams: ką sekti 2026 m.

Sukurkite praktišką išlaidų sekimo įrankį JAV laisvai samdomiems darbuotojams su Schedule C kategorijomis, kvitų laukais, nuvažiuotų mylių sekimu ir 2026 m. IRS taisyklių pakeitimais.

Geriausios nemokamos sąskaitų faktūrų programėlės mažoms JAV paslaugų įmonėms (2026 m.)

Geriausios nemokamos sąskaitų faktūrų programėlės mažoms JAV paslaugų įmonėms (2026 m.)

Palyginkite geriausias nemokamas sąskaitų faktūrų programėles JAV paslaugų įmonėms 2026 m., įskaitant „Zoho Invoice“, „Wave“, „Square“, „PayPal“ ir „Invoice Ninja“.

Nemokamas nuosavybės nuomos išlaidų ir pajamų stebėtojo „Excel“ šablonas: pradedančiųjų vadovas

Nemokamas nuosavybės nuomos išlaidų ir pajamų stebėtojo „Excel“ šablonas: pradedančiųjų vadovas

Naudokite nemokamą „Excel“ nuomos nuosavybės stebėtoją pajamoms, išlaidoms, nuosavybei ir mėnesiniam pinigų srautui organizuoti. Sužinokite, ką fiksuoti, kaip tai nustatyti ir kokių klaidų vengti.