Las funciones ImputBox y MsgBox

A lo largo de los diferentes ejemplos que he ido insertando, he ido adelantando en la práctica algunos conceptos que, no  he expuesto en profundidad. En el presente post, trataré de explicar las posibles configuraciones que tiene los cuadros de entrada (inputbox) y de mensajes (message-box/MsgBox).

Los primeros permiten introducir datos por teclado. Su sintáxis es la siguiente:

InputBox([prompt],[Title],[Default],{xpos],[ypos],[help file,context])

‘Prompt : Es el texto mostrado en el cuadro de dialogo

‘Title :(opcional)Texto de titulo para el cuadro de dialogo

‘Default :Valor por defecto mostrado en el cuadro de dialogo

‘Xpos,Ypos :La patalla se ubicar segun las cordenadas

‘Helpfile ,context (opcional).el archivo de ayuda

‘Type :Opcional. Expresión numérica que es el número de contexto de Ayuda asignado por el autor al tema de Ayuda correspondiente.El tipo de dato devuelto como se ve en la siguiente tabla.

codigo –> SIGNIFICADO
‘——
‘0 —–> Una fórmula
‘1 —–> Un numero
‘2 —–> Una cadena(texto)
‘4 —–> Un valor logico(True o False)
‘8 —–> Una celda de referencia ,como un objeto de rango
’16 —–> Un error de valor,como #N/A

El MsgBox es el cuadro de respuesta de la API de Windows. Su sintáxis es la siguiente:

Muestra un mensaje en un cuadro de diálogo, espera a que el usuario haga clic en un botón y devuelve un tipo Integer correspondiente al botón elegido por el usuario.


MsgBox(prompt[, buttons][, title][, helpfile, context])

La sintaxis de la función MsgBox consta de estos argumentos con nombre:

prompt Requerido. Expresión de cadena que representa el prompt en el cuadro de diálogo. La longitud máxima de prompt es de aproximadamente 1024 caracteres, según el ancho de los caracteres utilizados. Si prompt consta de más de una línea, puede separarlos utilizando un carácter de retorno de carro (Chr(13)) o un carácter de avance de línea (Chr(10)), o una combinación de caracteres de retorno de carro – avance de línea (Chr(13) y Chr(10)) entre cada línea y la siguiente.
buttons Opcional. Expresión numérica que corresponde a la suma de los valores que especifican el número y el tipo de los botones que se pretenden mostrar, el estilo de icono que se va a utilizar, la identidad del botón predeterminado y la modalidad del cuadro de mensajes. Si se omite este argumento, el valor predeterminado para buttons es 0.
title Opcional. Expresión de cadena que se muestra en la barra de título del cuadro de diálogo. Si se omite title, en la barra de título se coloca el nombre de la aplicación.
helpfile Opcional. Expresión de cadena que identifica el archivo de Ayuda que se utiliza para proporcionar ayuda interactiva en el cuadro de diálogo. Si se especifica helpfile, también se debe especificar context.
context Opcional. Expresión numérica que es igual al número de contexto de Ayuda asignado por el autor al tema de Ayuda correspondiente. Si se especifica context, también se debe especificar helpfile.

Valores

El argumento buttons tiene estos valores:

VbOKOnly 0 Muestra solamente el botón Aceptar.
VbOKCancel 1 Muestra los botones Aceptar y Cancelar.
VbAbortRetryIgnore 2 Muestra los botones Anular, Reintentar e Ignorar.
VbYesNoCancel 3 Muestra los botones , No y Cancelar.
VbYesNo 4 Muestra los botones y No.
VbRetryCancel 5 Muestra los botones Reintentar y Cancelar.
VbCritical 16 Muestra el icono de mensaje crítico.
VbQuestion 32 Muestra el icono de pregunta de advertencia.
VbExclamation 48 Muestra el icono de mensaje de advertencia.
VbInformation 64 Muestra el icono de mensaje de información.
VbDefaultButton1 0 El primer botón es el predeterminado.
VbDefaultButton2 256 El segundo botón es el predeterminado.
VbDefaultButton3 512 El tercer botón es el predeterminado.
VbDefaultButton4 768 El cuarto botón es el predeterminado.
VbApplicationModal 0 Aplicación modal; el usuario debe responder al cuadro de mensajes antes de poder seguir trabajando en la aplicación actual.
VbSystemModal 4096 Sistema modal; se suspenden todas las aplicaciones hasta que el usuario responda al cuadro de mensajes.
VbMsgBoxHelpButton 16384 Agrega el botón Ayuda al cuadro de mensaje.
VbMsgBoxSetForeground 65536 Especifica la ventana del cuadro de mensaje como la ventana de primer plano.
VbMsgBoxRight 524288 El texto se alínea a la derecha.
VbMsgBoxRtlReading 1048576 Especifica que el texto debe aparecer para ser leído de derecha a izquierda en sistemas hebreo y árabe.

Ejemplo:

Sub ejemplo()
Dim pregunta, res1, res2, res3 As String

pregunta = InputBox(«¿Cómo te llamas?», «Bienvenido»)
res1 = MsgBox(«Hola » & pregunta, vbExclamation, «Bienvenido»)
res2 = MsgBox(«Hola » & pregunta, 64, «Bienvenido»)
res3 = MsgBox(«Hola » & pregunta, 64 + vbMsgBoxRight, «Bienvenido»)
End Sub

Pruebe con las diferentes combinaciones a la hora de programar sus cuadros. Lo interesante es preparar unos cuantos que fácilmente puede implementar en sus programas.