VBA recuperar valor devuelto por MsgBox
Resuelto
Code Jack
Mensajes publicados
18
Estado
Miembro
-
Yop73 -
Yop73 -
Hola a todos,
No puedo recuperar el valor devuelto por una MsgBox en una variable myChoice. Necesito saber si el usuario desea salir del procedimiento paso a paso...
¿Podrían ayudarme?
Gracias de antemano,
Código Jack
Configuración: Windows 7 / Firefox 5.0
No puedo recuperar el valor devuelto por una MsgBox en una variable myChoice. Necesito saber si el usuario desea salir del procedimiento paso a paso...
¿Podrían ayudarme?
Gracias de antemano,
Código Jack
Configuración: Windows 7 / Firefox 5.0
2 respuestas
Hola,
Todo depende de su MsgBox...
Ejemplo con un cuadro de mensaje "sí - no":
--
Atentamente,
Franck P
Todo depende de su MsgBox...
Ejemplo con un cuadro de mensaje "sí - no":
Sub test() Dim result As String, MyChoice As String result = MsgBox("¡Haga su elección!", vbYesNo) If result = vbYes Then MyChoice = "Opción 1 : Sí" Else MyChoice = "Opción 2 : No" End If MsgBox MyChoice End Sub --
Atentamente,
Franck P
Yop73
Gracias
Esa es exactamente el tipo de solicitud que tengo que hacer, gracias.
Pero la ayuda precisa sobre MsgBox:
"Valores devueltos:
Constante, Valor, Descripción
vbOK, 1, OK
vbCancel, 2, Cancelar
vbAbort, 3, Abandonar
vbRetry, 4, Reintentar
vbIgnore, 5, Ignorar
vbYes, 6, Sí
vbNo, 7, No"
Así que pensé que había que recuperar en myChoice un entero...
Pero si no, no pasa nada, puedo trabajar con su propuesta.
Muchas gracias,
Código Jack
Pero la ayuda precisa sobre MsgBox:
"Valores devueltos:
Constante, Valor, Descripción
vbOK, 1, OK
vbCancel, 2, Cancelar
vbAbort, 3, Abandonar
vbRetry, 4, Reintentar
vbIgnore, 5, Ignorar
vbYes, 6, Sí
vbNo, 7, No"
Así que pensé que había que recuperar en myChoice un entero...
Pero si no, no pasa nada, puedo trabajar con su propuesta.
Muchas gracias,
Código Jack
Lo que mencionas es aún más interesante para mí porque nunca me lo había preguntado y acabo de darme cuenta de que... ¡estaba completamente equivocado!
MsgBox devuelve un Integer de manera sistemática... vbYes, por ejemplo, es una constante de VBA igual a 6.
El error que he cometido desde el principio es gestionado automáticamente por VBA...
Dim result As String mientras que, de hecho, result = 6 se trata de forma automática (lo leí en alguna parte, pero ¿dónde...???).
Fuentes: MsgBox
MsgBox devuelve un Integer de manera sistemática... vbYes, por ejemplo, es una constante de VBA igual a 6.
El error que he cometido desde el principio es gestionado automáticamente por VBA...
Dim result As String mientras que, de hecho, result = 6 se trata de forma automática (lo leí en alguna parte, pero ¿dónde...???).
Fuentes: MsgBox