Hur man arbetar med meddelande- och inmatningsboxar i PowerPoint VBA?

När jag gick igenom kommentarerna har jag sett ett par läsarfrågor om hur man arbetar med Visual Basic Input och Message Boxes i PowerPoint.

I den här handledningen ger vi en mycket grundläggande grundläggande kunskap som hjälper dig att använda dessa funktioner när du automatiserar din presentation.

Konfigurera fliken Utvecklare

Först och främst måste vi aktivera utvecklarmiljön för PowerPoint. Följ den här handledningen för att ställa in din utvecklingsflik.

I PowerPoint, gå till Utvecklarmenyn och tryck på Visual Basic.

Högerklicka på din presentation i projektträdet, tryck på Infoga och välj sedan Modul. En ny VBA-modul kommer att skapas, det är den plats där du ska skriva din kod.

Meddelanderutor i PowerPoint

Meddelanderutor är lite självförklarande, deras mål är att visa användbar information för slutanvändaren. Skriv följande kod i din modul:

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

Tryck på F5 eller Kör och se resultatet:

Hur man arbetar med meddelande- och inmatningsboxar i PowerPoint VBA?

Exempel på meddelande och inmatningsruta

Till skillnad från meddelandeboxar används inmatningsboxar för att få feedback från användaren. Låt oss titta på exemplet nedan. Skriptet infogar automatiskt nya bilder i presentationen.

Här är vad vi kommer att implementera:

  1. Vi kommer först att fråga användaren om antalet bilder som ska läggas till (med hjälp av en inmatningsruta).
  2. Vi kommer sedan att meddela användaren om antalet bilder som ska skapas (med hjälp av en meddelanderuta)
  3. Sist, kommer att gå vidare och skapa bilderna programmatiskt.
  4. Sist sparar vi den ändrade presentationen


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

Förhoppningsvis hjälpte det, lämna gärna kommentarer efter behov.

Kontrollera värdena som returneras från MsgBox-funktionen

När dialogrutan MsgBox dyker upp för användarinteraktion, vill du veta vilket alternativ användaren klickade på, kan du använda följande kod för att kontrollera att:

Koden kontrollerar vilken knapp användaren väljer på MsgBox

Motsvarar varje användares val kan du fortsätta att köra olika koder, dessa VBA-koder kan du lära dig i VBA-kurser med ledande experter på Learn Excel Online.

Stöder MsgBox accentuerad vietnamesiska? Svaret är nej, varför? För att Microsoft programmerade det så. Men finns det något annat sätt? Svaret är ja, du kan läsa artikeln Using accented Vietnamese with MsgBox VBA

All kod i artikeln kan du se på Gist:

  Sub HeoBasicMessageBox()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online"
  Avsluta Sub
   
  Sub HeoBasicMessageBoxWithTitle()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online", , "HEO"
  Avsluta Sub
   
  Sub HeoBasicMessageBox2()
  MsgBox "Hoc Excel Online", _
  vbOKCancel + _
  vbCritical + _
  vbDefaultButton1 + _
  vbApplicationModal
  Avsluta Sub
   
  Sub HeoBasicMessageBox3()
  MsgBox "Hoc Excel Online", _
  vbOKCancel + _
  vbCritical + _
  vbDefaultButton1 + _
  vbSystemModal
  Avsluta Sub
   
  Sub HeoMsgBoxResult1()
  Dim svar Som VbMsgBoxResult
   
  svar = MsgBox("Hoc Excel Online", vbYesNo + vbCritical)
  MsgBox svar
  Avsluta Sub
   
  Sub HeoMsgBoxResult2()
  Dim svar Som VbMsgBoxResult
   
  svar = MsgBox("Hoc Excel Online", vbYesNo + vbQuestion)
  MsgBox svar
  Avsluta Sub
   
  Sub HeoMsgBoxResult3()
  Dim svar Som VbMsgBoxResult
   
  svar = MsgBox("Hoc Excel Online", vbYesNo + vbExclamation)
  MsgBox svar
   
  Avsluta Sub
   
  Sub HeoMsgBoxResult4()
  Dim svar Som VbMsgBoxResult
   
  svar = MsgBox("Hoc Excel Online", vbYesNo + vbInformation)
  MsgBox svar
  Avsluta Sub
   
  Sub HeoMsgBoxResult5()
  Dim svar Som VbMsgBoxResult
  respons = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton)
  MsgBox svar
  Avsluta Sub
   
  Sub HeoMsgBoxResult6()
  Dim svar Som VbMsgBoxResult
  respons = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton)
  MsgBox svar
  Avsluta Sub
   
  Sub HeoMsgBoxResult7()
  Dim svar Som VbMsgBoxResult
  response = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton)
  MsgBox svar
  Avsluta Sub
   
  Sub HeoMsgBoxResult8()
  Dim svar Som VbMsgBoxResult
  response = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton)
  MsgBox svar
  Avsluta Sub
   
  Sub HeoMsgBoxResult9()
  Dim svar Som VbMsgBoxResult
  response = MsgBox("Vill du försöka igen?", vbRetryCancel + vbQuestion, "Fel")
  MsgBox svar
  Avsluta Sub
   
  Sub HeoMsgBoxResult10()
  MsgBox "Kritiskt fel uppstod", vbCritical, "Systemfel"
  Avsluta Sub

Lämna en kommentar

PowerPoint-mall för årsredovisning för ideella organisationer: Gratis nedladdningsalternativ och checklista för bildspel

PowerPoint-mall för årsredovisning för ideella organisationer: Gratis nedladdningsalternativ och checklista för bildspel

Skapa en tydlig årsredovisning för ideella organisationer i PowerPoint med en gratis mall, praktisk bildstruktur, effektmått, ekonomi och presentationstips som är redo för givare.

PowerPoint-mall för minimalistisk investerarpresentation för teknikstartups: Vad som ska inkluderas och vad som ska utelämnas

PowerPoint-mall för minimalistisk investerarpresentation för teknikstartups: Vad som ska inkluderas och vad som ska utelämnas

Skapa en PowerPoint-presentation för investerare i cleantech-startups med praktisk bildstruktur, evidensfokuserat budskap, tillgänglig design och färre distraktioner.

Enkel mall för uppgiftsdelegeringsmatris för Word: En praktisk version för små teamchefer

Enkel mall för uppgiftsdelegeringsmatris för Word: En praktisk version för små teamchefer

Använd den här enkla mallen för uppgiftsdelegeringsmatris i Word för att tilldela ägare, beslutsgränser, deadlines och kontrollpunkter utan att komplicera ett litet team alltför mycket.

Mall för enkel närvarolista för dagis: Utskrivbar in- och utloggning för hemomsorg

Mall för enkel närvarolista för dagis: Utskrivbar in- och utloggning för hemomsorg

Använd detta enkla utskrivbara närvaroblad för dagis för hemomsorg, med barnens namn, ankomst-/avgångstider, underskrifter och tips om efterlevnad.

Utskrivbar mall för marknadsföringsstrategi på en sida för lokala företag

Utskrivbar mall för marknadsföringsstrategi på en sida för lokala företag

Använd den här utskrivbara mallen för marknadsföringsstrategi på en sida för att definiera din lokala målgrupp, erbjudande, kanaler, budget, veckovisa åtgärder och mätbara mål.

Hur man stoppar Excel från att automatiskt ändra siffror till datum

Hur man stoppar Excel från att automatiskt ändra siffror till datum

Stoppa Excel från att konvertera värden som 1/2, 11-53 eller JAN1 till datum. Lär dig pålitliga lösningar för inmatning, inklistring, CSV-import och redan konverterade celler.

Modern Real Estate Listing Presentation PowerPoint Template (Free): What to Include

Modern Real Estate Listing Presentation PowerPoint Template (Free): What to Include

Build a polished real estate listing PowerPoint for free with a practical slide plan, photo, branding, accessibility, compliance, and export tips.

Så åtgärdar du felet att Outlook inte kan skicka e-post men kan ta emot

Så åtgärdar du felet att Outlook inte kan skicka e-post men kan ta emot

Åtgärda Outlook när du kan ta emot e-post men inte skicka. Kontrollera Utkorg, offlineläge, inloggning, SMTP-inställningar, profiler och ändringar i Microsoft 365.

Enkel biweekly lönespårare i Excel för små team: En praktisk installationsguide

Enkel biweekly lönespårare i Excel för små team: En praktisk installationsguide

Bygg en enkel biweekly lönespårare i Excel för ett litet team, med timmar, lön, avdrag, granskningsflaggor, sammanfattningar och vägledning för dokumentation.

Utskrivbar checklista och budgetmall för evenemangsplanering för Word: Vad som ska inkluderas och när man ska använda Excel istället

Utskrivbar checklista och budgetmall för evenemangsplanering för Word: Vad som ska inkluderas och när man ska använda Excel istället

Skapa eller anpassa en utskrivbar checklista och budgetmall för evenemangsplanering i Microsoft Word, med praktiska avsnitt, avvägningar och tips för Word kontra Excel.