La función `MsgBox` en VBA (Visual Basic for Applications) se utiliza para mostrar un cuadro de mensaje al usuario. Esta función es muy útil para mostrar información, advertencias, preguntas o errores. A continuación te proporcionaré una guía básica sobre cómo utilizar la función `MsgBox` en VBA.
Sintaxis
MsgBox(prompt[, buttons] [, title] [, helpfile, context])
Descripción de los argumentos
- prompt: (Obligatorio) Una expresión de cadena que se muestra como mensaje en el cuadro. Puede contener un máximo de aproximadamente 1,024 caracteres, dependiendo del ancho de los caracteres utilizados.
- buttons: (Opcional) Una expresión numérica que representa la suma de valores que especifican el número y tipo de botones que aparecen, el estilo del ícono, el botón predeterminado, y la modalidad del cuadro de mensaje. Estos valores se suman para obtener el parámetro final.
- title: (Opcional) Una expresión de cadena que se muestra en la barra de título del cuadro de mensaje. Si se omite, se usa el nombre de la aplicación.
- helpfile y context: (Opcionales) Se utilizan para especificar un archivo de ayuda y un id de contexto, aunque rara vez se utilizan en la práctica cotidiana.
Valores para el parámetro `buttons`
Ejemplos comunes de valores que se pueden usar:
- Botones:
- `vbOKOnly` (0): Muestra solo un botón Aceptar.
- `vbOKCancel` (1): Muestra botones Aceptar y Cancelar.
- `vbAbortRetryIgnore` (2): Muestra botones Anular, Reintentar, e Ignorar.
- `vbYesNoCancel` (3): Muestra botones Sí, No y Cancelar.
- `vbYesNo` (4): Muestra botones Sí y No.
- `vbRetryCancel` (5): Muestra botones Reintentar y Cancelar.
- Íconos:
- `vbCritical` (16): Muestra un ícono crítico.
- `vbQuestion` (32): Muestra un ícono de pregunta.
- `vbExclamation` (48): Muestra un ícono de exclamación.
- `vbInformation` (64): Muestra un ícono de información.
- Botón por defecto:
- `vbDefaultButton1` (0): Primer botón por defecto.
- `vbDefaultButton2` (256): Segundo botón por defecto.
- `vbDefaultButton3` (512): Tercer botón por defecto.
- `vbDefaultButton4` (768): Cuarto botón por defecto.
Ejemplos de uso
MsgBox "Operación completada exitosamente."
MsgBox "¿Desea continuar con la operación?", vbYesNo, "Confirmación"
Dim respuesta As Integer
respuesta = MsgBox("¿Está seguro de que desea borrar el archivo?", vbYesNoCancel + vbExclamation, "Advertencia")
If respuesta = vbYes Then
' Código para borrar el archivo
ElseIf respuesta = vbNo Then
' Código si elige No
Else
' Código si elige Cancelar
End If
- Un simple mensaje de información:
- Un mensaje con título personalizado:
- Utilizando íconos y botones:
Estos ejemplos cubren los casos más comunes de uso del `MsgBox`. Puedes adaptarlos según tus necesidades específicas en tus proyectos VBA.