¿Cómo trabajar con cuadros de mensaje y entrada en PowerPoint VBA?

Al revisar los comentarios, he visto un par de preguntas de los lectores sobre cómo trabajar con cuadros de entrada y mensajes de Visual Basic en PowerPoint.

En este tutorial, proporcionaremos un conocimiento básico muy básico para ayudarlo a usar esas capacidades al automatizar la creación de su presentación.

Configuración de la pestaña Desarrollador

En primer lugar, necesitaremos habilitar el entorno de desarrollo para PowerPoint. Siga este tutorial para configurar su pestaña de desarrollo.

En PowerPoint, vaya al menú Desarrollador y presione Visual Basic.

En el árbol del proyecto, haga clic derecho en su presentación, presione Insertar y luego elija Módulo. Se creará un nuevo Módulo VBA, ese es el lugar en el que escribirá su código.

Cuadros de mensaje en PowerPoint

Los cuadros de mensaje se explican por sí mismos, su objetivo es mostrar información útil para el usuario final. Escribe el siguiente código en tu Módulo:

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

Pulse F5 o Ejecutar y vea el resultado:

¿Cómo trabajar con cuadros de mensaje y entrada en PowerPoint VBA?

Ejemplo de mensaje y cuadro de entrada

A diferencia de los cuadros de mensaje, los cuadros de entrada se utilizan para obtener comentarios del usuario. Veamos el ejemplo a continuación. El guión inserta automáticamente nuevas diapositivas en la presentación.

Esto es lo que implementaremos:

  1. Primero le pediremos al usuario la cantidad de diapositivas que desea agregar (usando un cuadro de entrada).
  2. Luego, notificaremos al usuario sobre la cantidad de diapositivas que se crearán (usando un cuadro de mensaje)
  3. Por último, seguirá adelante y creará las diapositivas mediante programación.
  4. Por último, guardaremos la presentación 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

Con suerte, eso ayudó, siéntase libre de dejar comentarios según sea necesario.

Verifique los valores devueltos por la función MsgBox

Cuando aparece el cuadro de diálogo MsgBox para la interacción del usuario, desea saber en qué opción hizo clic el usuario, puede usar el siguiente código para verificarlo:

El código verifica qué botón elige el usuario en MsgBox

De acuerdo con la elección de cada usuario, puede continuar ejecutando diferentes códigos; estos códigos VBA los puede aprender en cursos de VBA con los principales expertos en Aprenda Excel en línea.

¿MsgBox admite vietnamita con acento? La respuesta es no, ¿por qué? Porque Microsoft lo programó así. ¿Pero hay alguna otra manera? La respuesta es sí, puedes leer el artículo Usando vietnamita con acento con MsgBox VBA

Todo el código del artículo lo puedes ver en Gist:

  SubHeoBasicMessageBox()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online"
  Subtítulo final
   
  SubHeoBasicMessageBoxWithTitle()
  MsgBox "Xin chao cac ban da den voi Hoc Excel Online", , "HEO"
  Subtítulo final
   
  SubHeoBasicMessageBox2()
  MsgBox "Hoc Excel Online", _
  vbOKCancelar + _
  vbCrítico + _
  vbDefaultButton1 + _
  vbAplicaciónModal
  Subtítulo final
   
  SubHeoBasicMessageBox3()
  MsgBox "Hoc Excel Online", _
  vbOKCancelar + _
  vbCrítico + _
  vbDefaultButton1 + _
  vbSistemaModal
  Subtítulo final
   
  SubHeoMsgBoxResult1()
  Respuesta tenue como VbMsgBoxResult
   
  respuesta = MsgBox("Hoc Excel Online", vbYesNo + vbCritical)
  respuesta de cuadro de mensaje
  Subtítulo final
   
  SubHeoMsgBoxResult2()
  Respuesta tenue como VbMsgBoxResult
   
  respuesta = MsgBox("Hoc Excel Online", vbSíNo + vbPregunta)
  respuesta de cuadro de mensaje
  Subtítulo final
   
  SubHeoMsgBoxResult3()
  Respuesta tenue como VbMsgBoxResult
   
  respuesta = MsgBox("Hoc Excel Online", vbYesNo + vbExclamation)
  respuesta de cuadro de mensaje
   
  Subtítulo final
   
  SubHeoMsgBoxResult4()
  Respuesta tenue como VbMsgBoxResult
   
  respuesta = MsgBox("Hoc Excel Online", vbSíNo + vbInformación)
  respuesta de cuadro de mensaje
  Subtítulo final
   
  SubHeoMsgBoxResult5()
  Respuesta tenue como VbMsgBoxResult
  respuesta = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton1 + vbMsgBoxHelpButton)
  respuesta de cuadro de mensaje
  Subtítulo final
   
  SubHeoMsgBoxResult6()
  Respuesta tenue como VbMsgBoxResult
  respuesta = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton2 + vbMsgBoxHelpButton)
  respuesta de cuadro de mensaje
  Subtítulo final
   
  SubHeoMsgBoxResult7()
  Respuesta tenue como VbMsgBoxResult
  respuesta = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton3 + vbMsgBoxHelpButton)
  respuesta de cuadro de mensaje
  Subtítulo final
   
  Sub HeoMsgBoxResult8()
  Respuesta tenue como VbMsgBoxResult
  respuesta = MsgBox("Error", vbAbortRetryIgnore + vbDefaultButton4 + vbMsgBoxHelpButton)
  respuesta de cuadro de mensaje
  Subtítulo final
   
  SubHeoMsgBoxResult9()
  Respuesta tenue como VbMsgBoxResult
  respuesta = MsgBox("¿Quieres volver a intentarlo?", vbRetryCancel + vbQuestion, "Error")
  respuesta de cuadro de mensaje
  Subtítulo final
   
  SubHeoMsgBoxResult10()
  MsgBox "Ocurrió un error crítico", vbCritical, "Error del sistema"
  Subtítulo final

Dejar un comentario

How to Create a Simple Lead Tracking System in Excel Before Buying a CRM

How to Create a Simple Lead Tracking System in Excel Before Buying a CRM

Build a practical Excel lead tracker with tables, dropdowns, follow-up dates, filters, conditional formatting, and a simple PivotTable dashboard before investing in CRM software.

Hoja de asistencia imprimible sencilla para guardería en el hogar: qué registrar y por qué.

Hoja de asistencia imprimible sencilla para guardería en el hogar: qué registrar y por qué.

Utilice esta sencilla hoja de asistencia imprimible para guarderías en el hogar para llevar un registro de llegadas, salidas, ausencias, firmas y documentos requeridos.

Plantilla sencilla de hoja de recuento de inventario para Excel: un diseño listo para el comercio minorista que permite una conciliación rápida.

Plantilla sencilla de hoja de recuento de inventario para Excel: un diseño listo para el comercio minorista que permite una conciliación rápida.

Crea una sencilla hoja de cálculo de Excel para el recuento de inventario en tiendas minoristas, con controles para SKU, ubicación, cantidad contada, variación, recuento y lista para imprimir.

Plantilla imprimible de una página para la estrategia de marketing de negocios locales

Plantilla imprimible de una página para la estrategia de marketing de negocios locales

Utilice esta plantilla imprimible de una página para la estrategia de marketing, donde podrá elegir un público objetivo local, una oferta, una combinación de canales, un presupuesto, acciones y objetivos medibles.

Plantilla gratuita de horarios de turnos para empleados en Excel con calculadora automática de horas.

Plantilla gratuita de horarios de turnos para empleados en Excel con calculadora automática de horas.

Crea gratis un horario de turnos para empleados en Excel con horas de inicio y finalización, deducciones por descansos, gestión de turnos nocturnos, totales semanales y una sencilla calculadora de horas.

Las mejores aplicaciones gratuitas de facturación para pequeñas empresas de servicios en EE. UU. (2026)

Las mejores aplicaciones gratuitas de facturación para pequeñas empresas de servicios en EE. UU. (2026)

Compara las mejores aplicaciones gratuitas de facturación para empresas de servicios en EE. UU. en 2026, incluyendo Zoho Invoice, Square, Wave, PayPal e Invoice Ninja.

Plantilla sencilla de Excel para el seguimiento de nóminas quincenales para equipos pequeños: una configuración ideal para principiantes.

Plantilla sencilla de Excel para el seguimiento de nóminas quincenales para equipos pequeños: una configuración ideal para principiantes.

Crea un sencillo sistema de seguimiento de nóminas quincenales en Excel para un equipo pequeño, con hojas de cálculo claras, fórmulas, controles y límites prácticos para una conciliación de nóminas segura.

Cómo exportar contactos de Salesforce a un formato Excel limpio

Cómo exportar contactos de Salesforce a un formato Excel limpio

Aprende a exportar los contactos de Salesforce a un archivo Excel limpio, conservar los ID y los campos de texto, eliminar duplicados de forma segura y evitar errores comunes en los archivos CSV.

Plantilla imprimible de presupuesto de obra en Excel para pequeños contratistas

Plantilla imprimible de presupuesto de obra en Excel para pequeños contratistas

Cree un presupuesto imprimible para un proyecto de construcción en Excel con categorías de costos prácticas, fórmulas, campos de margen de beneficio, configuración de impresión y una lista de verificación lista para el contratista.

Lista de verificación y plantilla de presupuesto para planificación de eventos imprimible para Word

Lista de verificación y plantilla de presupuesto para planificación de eventos imprimible para Word

Utilice esta lista de verificación imprimible y plantilla de presupuesto para eventos en Word para rastrear responsables, plazos, costos, proveedores y la preparación del día del evento con controles de calidad claros.