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

[100% löst] Hur åtgärdar jag meddelandet Fel vid utskrift i Windows 10?

[100% löst] Hur åtgärdar jag meddelandet Fel vid utskrift i Windows 10?

Får felmeddelande om utskrift på ditt Windows 10-system, följ sedan korrigeringarna i artikeln och få din skrivare på rätt spår...

Hur man fångar och spelar en Microsoft Teams-inspelning

Hur man fångar och spelar en Microsoft Teams-inspelning

Du kan enkelt besöka dina möten igen om du spelar in dem. Så här spelar du in en Microsoft Teams-inspelning för ditt nästa möte.

Hur man återställer standardappar på Android

Hur man återställer standardappar på Android

När du öppnar en fil eller klickar på en länk väljer din Android-enhet en standardapp för att öppna den. Du kan återställa dina standardappar på Android med den här guiden.

FIXAT: Entitlement.diagnostics.office.com certifikatfel

FIXAT: Entitlement.diagnostics.office.com certifikatfel

FIXAT: Entitlement.diagnostics.office.com certifikatfel

Topp 10 spelwebbplatser som inte blockerades av skolan 2022

Topp 10 spelwebbplatser som inte blockerades av skolan 2022

För att ta reda på de bästa spelsajterna som inte blockeras av skolor, läs artikeln och välj den bästa oblockerade spelwebbplatsen för skolor, högskolor och verk

FIXAT: Skrivare i feltillstånd [HP, Canon, Epson, Zebra & Brother]

FIXAT: Skrivare i feltillstånd [HP, Canon, Epson, Zebra & Brother]

Om du står inför problemet med skrivaren i feltillstånd på Windows 10 PC och inte vet hur du ska hantera det, följ dessa lösningar för att fixa det.

Så här säkerhetskopierar du din Chromebook (2022)

Så här säkerhetskopierar du din Chromebook (2022)

Om du undrar hur du säkerhetskopierar din Chromebook, så hjälper vi dig. Läs mer om vad som säkerhetskopieras automatiskt och vad som inte görs här

Så här fixar du att Xbox-appen inte öppnas i Windows 10 [SNABBGUIDE]

Så här fixar du att Xbox-appen inte öppnas i Windows 10 [SNABBGUIDE]

Vill du fixa Xbox-appen öppnas inte i Windows 10, följ sedan korrigeringarna som Aktivera Xbox-appen från tjänster, återställ Xbox-appen, Återställ Xbox-apppaketet och andra.

Vad är LogiOptions.exe (UNICODE) och är processen säker?

Vad är LogiOptions.exe (UNICODE) och är processen säker?

Om du har ett Logitech-tangentbord och -mus kommer du att se den här processen köras. Det är inte skadlig programvara, men det är inte en viktig körbar fil för Windows OS.

Fixat Java Update/Install Error 1603 i Windows 10

Fixat Java Update/Install Error 1603 i Windows 10

Läs artikeln för att lära dig hur du fixar Java Update-fel 1603 i Windows 10, prova korrigeringarna en efter en och fixa fel 1603 enkelt ...