Las funciones ImputBox y MsgBox
29 agosto, 2011 Deja un comentario
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 Sí, No y Cancelar. |
VbYesNo | 4 | Muestra los botones Sí 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.