Como trabalhar com mensagens e caixas de entrada no PowerPoint VBA?

Percorrendo os comentários, vi algumas perguntas de leitores sobre como trabalhar com caixas de entrada e mensagem do Visual Basic no PowerPoint.

Neste tutorial, forneceremos um conhecimento básico muito básico para ajudá-lo a usar esses recursos ao automatizar a criação de sua apresentação.

Configurando a guia Desenvolvedor

Primeiro, precisaremos habilitar o ambiente do desenvolvedor para o PowerPoint. Siga este tutorial para configurar sua guia de desenvolvimento.

No PowerPoint, vá para o menu Desenvolvedor e clique em Visual Basic.

Na árvore do projeto, clique com o botão direito em sua apresentação, pressione Inserir e, em seguida, escolha Módulo. Um novo Módulo VBA será criado, é nesse local que você escreverá seu código.

Caixas de mensagens no PowerPoint

As caixas de mensagens são meio autoexplicativas, seu objetivo é exibir algumas informações úteis para o usuário final. Escreva o seguinte código em seu módulo:

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

Aperte F5 ou Run e veja o resultado:

Como trabalhar com mensagens e caixas de entrada no PowerPoint VBA?

Exemplo de mensagem e caixa de entrada

Ao contrário das Caixas de Mensagens, as caixas de entrada são usadas para obter feedback do usuário. Vejamos o exemplo abaixo. O script insere automaticamente novos slides na apresentação.

Aqui está o que vamos implementar:

  1. Primeiro, solicitaremos ao usuário o número de slides a serem adicionados (usando uma caixa de entrada).
  2. Em seguida, notificaremos o usuário sobre o número de slides a serem criados (usando uma caixa de mensagem)
  3. Por último, seguirá em frente e criará os slides programaticamente.
  4. Por último, salvaremos a apresentação modificada


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

Espero ter ajudado, sinta-se à vontade para deixar comentários conforme necessário.

Verifique os valores retornados da função MsgBox

Quando a caixa de diálogo MsgBox aparecer para interação do usuário, você deseja saber em qual opção o usuário clicou, você pode usar o seguinte código para verificar isso:

O código verifica qual botão o usuário escolhe no MsgBox

De acordo com a escolha de cada usuário, você pode continuar executando códigos diferentes. Esses códigos VBA podem ser aprendidos em cursos VBA com os principais especialistas em Aprenda Excel Online.

MsgBox suporta vietnamita com sotaque? A resposta é não, por quê? Porque a Microsoft programou assim. Mas existe alguma outra maneira? A resposta é sim. Você pode ler o artigo Usando vietnamita com sotaque com MsgBox VBA

Todo o código do artigo você pode ver no Gist:

  SubHeoBasicMessageBox()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online"
  Finalizar sub
   
  SubHeoBasicMessageBoxWithTitle()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online", , "HEO"
  Finalizar sub
   
  SubHeoBasicMessageBox2()
  MsgBox "Hoc Excel Online", _
  vbOKCancelar + _
  vbCrítico + _
  vbDefaultButton1 + _
  vbApplicationModal
  Finalizar sub
   
  SubHeoBasicMessageBox3()
  MsgBox "Hoc Excel Online", _
  vbOKCancelar + _
  vbCrítico + _
  vbDefaultButton1 + _
  vbSystemModal
  Finalizar sub
   
  SubHeoMsgBoxResult1()
  Resposta escura como VbMsgBoxResult
   
  resposta = MsgBox("Hoc Excel Online", vbSimNão + vbCritical)
  Resposta da caixa de mensagens
  Finalizar sub
   
  SubHeoMsgBoxResult2()
  Resposta escura como VbMsgBoxResult
   
  resposta = MsgBox("Hoc Excel Online", vbSimNão + vbQuestion)
  Resposta da caixa de mensagens
  Finalizar sub
   
  SubHeoMsgBoxResult3()
  Resposta escura como VbMsgBoxResult
   
  resposta = MsgBox("Hoc Excel Online", vbSimNão + vbExclamação)
  Resposta da caixa de mensagens
   
  Finalizar sub
   
  SubHeoMsgBoxResult4()
  Resposta escura como VbMsgBoxResult
   
  resposta = MsgBox("Hoc Excel Online", vbSimNão + vbInformation)
  Resposta da caixa de mensagens
  Finalizar sub
   
  SubHeoMsgBoxResult5()
  Resposta escura como VbMsgBoxResult
  resposta = MsgBox("Erro", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton)
  Resposta da caixa de mensagens
  Finalizar sub
   
  SubHeoMsgBoxResult6()
  Resposta escura como VbMsgBoxResult
  resposta = MsgBox("Erro", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton)
  Resposta da caixa de mensagens
  Finalizar sub
   
  SubHeoMsgBoxResult7()
  Resposta escura como VbMsgBoxResult
  resposta = MsgBox("Erro", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton)
  Resposta da caixa de mensagens
  Finalizar sub
   
  SubHeoMsgBoxResult8()
  Resposta escura como VbMsgBoxResult
  resposta = MsgBox("Erro", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton)
  Resposta da caixa de mensagens
  Finalizar sub
   
  SubHeoMsgBoxResult9()
  Resposta escura como VbMsgBoxResult
  resposta = MsgBox("Quer tentar novamente?", vbRetryCancel + vbQuestion, "Erro")
  Resposta da caixa de mensagens
  Finalizar sub
   
  SubHeoMsgBoxResult10()
  MsgBox "Ocorreu um erro crítico", vbCritical, "Erro de sistema"
  Finalizar sub

Leave a Comment

Como corrigir o código de erro NVIDIA GeForce Experience 0x0003 no Windows 10?

Como corrigir o código de erro NVIDIA GeForce Experience 0x0003 no Windows 10?

Cansado de corrigir o código de erro 0x0003 da Nvidia Geforce Experience no PC com Windows 10 e nada está funcionando? Em seguida, siga as correções fáceis fornecidas neste artigo.

Corrigir NOX Player sem som Windows 10 com 9 soluções rápidas

Corrigir NOX Player sem som Windows 10 com 9 soluções rápidas

Você está enfrentando NOX Player No Sound Issue enquanto joga seu jogo favorito? Em seguida, leia este guia detalhado e resolva o problema.

[RESOLVIDO] Erros do Call of Duty Advanced Warfare - travando, travando, FPS baixo e mais

[RESOLVIDO] Erros do Call of Duty Advanced Warfare - travando, travando, FPS baixo e mais

Aprenda a solucionar vários erros do Call of Duty Advanced Warfare, como travamentos, gagueira e FPS baixo para uma experiência de jogo otimizada.

Como corrigir um erro de falha ao carregar Steamui.dll no Steam

Como corrigir um erro de falha ao carregar Steamui.dll no Steam

Um erro fatal "falha ao carregar steamui.dll" no Steam pode ser corrigido. Confira as soluções eficazes para resolver este problema.

Como corrigir o erro 3000 do Twitch? [100% resolvido]

Como corrigir o erro 3000 do Twitch? [100% resolvido]

Obtendo o Twitch Error 3000 no Chrome, siga as soluções fornecidas e comece a vaporizar o Twitch sem o erro de decodificação do recurso 3000 Media.

[RESOLVIDO] Erros do American Truck Simulator: Crash, Steam_Api64.Dll está ausente e mais

[RESOLVIDO] Erros do American Truck Simulator: Crash, Steam_Api64.Dll está ausente e mais

Quer CORRIGIR ERROS DO AMERICAN TRUCK SIMULATOR: CRASH, LOW FPS, STEAM_API64.DLL ESTÁ FALTANDO PROBLEMA e MAIS, então siga as soluções fornecidas com cuidado.

Desempenho lento do Microsoft Word? Sete dicas para tornar o Word 365 / 2019 / 2016 muito mais rápido

Desempenho lento do Microsoft Word? Sete dicas para tornar o Word 365 / 2019 / 2016 muito mais rápido

Saiba como você pode facilmente tornar o Word 365 mais rápido ao desabilitar suplementos, atualizar seu hardware e se livrar de arquivos temporários.

[RESOLVIDO] Como corrigir League Of Legends d3dx9_39.dll ausente, erro DirectX

[RESOLVIDO] Como corrigir League Of Legends d3dx9_39.dll ausente, erro DirectX

Aprenda a corrigir erros d3dx9_39.dll e DirectX em League Of Legends. Siga as soluções fornecidas para resolver erros DirectX ausentes d3dx9_39.dll.

Como corrigir o problema do controlador PS5 não conecta/não sincroniza?

Como corrigir o problema do controlador PS5 não conecta/não sincroniza?

Se o controlador PS5 não se conectar ou não sincronizar, experimente estas soluções testadas e comprovadas para corrigir esses problemas de conexão.

Como corrigir NTLDR está faltando erro no Windows 10/8/7?

Como corrigir NTLDR está faltando erro no Windows 10/8/7?

Saiba como solucionar o erro "NTLDR está faltando" no Windows com as soluções mais eficientes. Conheça também o que causa o erro NTLDR e outras informações relevantes.