Cum se lucrează cu casetele de mesaje și de intrare în PowerPoint VBA?

Cum se lucrează cu casetele de mesaje și de intrare în PowerPoint VBA?

Parcurgând comentariile, am văzut câteva întrebări ale cititorilor despre cum să lucrați cu casetele de intrare și mesaje Visual Basic în PowerPoint.

În acest tutorial, vă vom oferi cunoștințe fundamentale de bază pentru a vă ajuta să utilizați aceste capacități atunci când vă automatizați crearea prezentării.

Configurarea filei Dezvoltator

În primul rând, va trebui să activăm mediul de dezvoltator pentru PowerPoint. Urmați acest tutorial pentru a vă configura fila de dezvoltare.

În PowerPoint, accesați meniul Dezvoltator și apăsați pe Visual Basic.

În arborele proiectului, faceți clic dreapta pe prezentare, apăsați Inserare și apoi alegeți Modul. Va fi creat un nou Modul VBA, acesta este locul în care vă veți scrie codul.

Casete de mesaje în PowerPoint

Casetele de mesaje se explică de la sine, scopul lor este de a afișa câteva informații utile utilizatorului final. Scrieți următorul cod în modulul dvs.:

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

Apăsați F5 sau Run și vedeți rezultatul:

Cum se lucrează cu casetele de mesaje și de intrare în PowerPoint VBA?

Exemplu de mesaje și casete de intrare

Spre deosebire de casetele de mesaje, casetele de intrare sunt folosite pentru a obține feedback de la utilizator. Să ne uităm la exemplul de mai jos. Scriptul inserează automat diapozitive noi în prezentare.

Iată ce vom implementa:

  1. Mai întâi vom solicita utilizatorului numărul de diapozitive de adăugat (folosind o casetă de introducere).
  2. Vom anunța apoi utilizatorul despre numărul de diapozitive care urmează să fie create (folosind o casetă de mesaje)
  3. În sfârșit, va continua și va crea diapozitivele în mod programatic.
  4. La sfârșit, vom salva prezentarea modificată


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

Sper că v-a ajutat, nu ezitați să lăsați comentarii după cum este necesar.

Verificați valorile returnate de la funcția MsgBox

Când apare caseta de dialog MsgBox pentru interacțiunea utilizatorului, doriți să știți pe ce opțiune a făcut clic utilizatorul, puteți utiliza următorul cod pentru a verifica asta:

Codul verifică ce buton alege utilizatorul pe MsgBox

În conformitate cu alegerea fiecărui utilizator, puteți continua să rulați diferite coduri, aceste coduri VBA, puteți învăța în cursuri VBA cu experți de top la Aflați Excel online.

MsgBox acceptă vietnameză cu accent? Răspunsul este nu, de ce? Pentru că Microsoft l-a programat așa. Dar există vreo altă cale? Răspunsul este da, puteți citi articolul Utilizarea vietnamezei accentuate cu MsgBox VBA

Tot codul din articol îl puteți vedea la 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", _
  vbOKAnulare + _
  vbCritical + _
  vbDefaultButton1 + _
  vbApplicationModal
  End Sub
   
  Sub HeoBasicMessageBox3()
  MsgBox "Hoc Excel Online", _
  vbOKAnulare + _
  vbCritical + _
  vbDefaultButton1 + _
  vbSystemModal
  End Sub
   
  Sub HeoMsgBoxResult1()
  Dim răspuns ca VbMsgBoxResult
   
  răspuns = MsgBox("Hoc Excel Online", vbYesNo + vbCritical)
  Răspuns MsgBox
  End Sub
   
  Sub HeoMsgBoxResult2()
  Dim răspuns ca VbMsgBoxResult
   
  răspuns = MsgBox("Hoc Excel Online", vbYesNo + vbQuestion)
  Răspuns MsgBox
  End Sub
   
  Sub HeoMsgBoxResult3()
  Dim răspuns ca VbMsgBoxResult
   
  răspuns = MsgBox("Hoc Excel Online", vbYesNo + vbExclamation)
  Răspuns MsgBox
   
  End Sub
   
  Sub HeoMsgBoxResult4()
  Dim răspuns ca VbMsgBoxResult
   
  răspuns = MsgBox("Hoc Excel Online", vbYesNo + vbInformation)
  Răspuns MsgBox
  End Sub
   
  Sub HeoMsgBoxResult5()
  Dim răspuns ca VbMsgBoxResult
  răspuns = MsgBox("Eroare", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton)
  Răspuns MsgBox
  End Sub
   
  Sub HeoMsgBoxResult6()
  Dim răspuns ca VbMsgBoxResult
  răspuns = MsgBox("Eroare", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton)
  Răspuns MsgBox
  End Sub
   
  Sub HeoMsgBoxResult7()
  Dim răspuns ca VbMsgBoxResult
  răspuns = MsgBox("Eroare", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton)
  Răspuns MsgBox
  End Sub
   
  Sub HeoMsgBoxResult8()
  Dim răspuns ca VbMsgBoxResult
  răspuns = MsgBox("Eroare", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton)
  Răspuns MsgBox
  End Sub
   
  Sub HeoMsgBoxResult9()
  Dim răspuns ca VbMsgBoxResult
  răspuns = MsgBox("Vrei să încerci din nou?", vbRetryCancel + vbQuestion, "Eroare")
  Răspuns MsgBox
  End Sub
   
  Sub HeoMsgBoxResult10()
  MsgBox „A apărut o eroare critică”, vbCritical, „Eroare de sistem”;
  End Sub

Ghimbir 2.7.53.0

Ghimbir 2.7.53.0

Ginger este un corector gratuit de ortografie și gramatică.

Blocuri

Blocuri

Blocuri este un joc intelectual pentru elevii clasei a III-a de școală elementară pentru a-și exersa abilitățile de detectare și ochi și este inclus de profesori în programul de suport didactic IT.

Prezi 6.26

Prezi 6.26

Prezi este o aplicație gratuită care vă permite să creați prezentări digitale, atât online, cât și offline.

Mathway

Mathway

Mathway este o aplicație foarte utilă care vă poate ajuta să rezolvați toate acele probleme de matematică care necesită un instrument mai complex decât calculatorul încorporat al dispozitivului dvs.

Adobe Presenter

Adobe Presenter

Adobe Presenter este un software de e-Learning lansat de Adobe Systems, disponibil pe platforma Microsoft Windows ca plug-in Microsoft PowerPoint.

Tucan 2.3.0

Tucan 2.3.0

Toucan este o platformă tehnologică educațională. Vă permite să învățați o nouă limbă în timp ce navigați pe site-uri web comune, de zi cu zi.

ENetViet 24.2

ENetViet 24.2

eNetViet este o aplicație care ajută la conectarea părinților cu școala în care învață copiii lor, astfel încât aceștia să poată înțelege clar situația actuală de învățare a copilului lor.

Duolingo

Duolingo

Duolingo - Învață limbi străine gratuit, sau pur și simplu Duolingo, este un program educațional care îți permite să înveți și să exersezi multe limbi diferite.

Tastare rapidă

Tastare rapidă

RapidTyping este un instrument de instruire la tastatură convenabil și ușor de utilizat, care vă va ajuta să vă îmbunătățiți viteza de tastare și să reduceți erorile de ortografie. Cu lecții organizate pentru mai multe niveluri diferite, RapidTyping vă va învăța cum să scrieți sau să îmbunătățiți abilitățile existente.

MathType 7.4.10.53

MathType 7.4.10.53

MathType este un software interactiv de ecuații de la dezvoltator Design Science (Dessci), care vă permite să creați și să adnotați notații matematice pentru procesarea de text, prezentări, eLearning etc. Acest editor este folosit și pentru crearea documentelor TeX, LaTeX și MathML.