Visual Basic - MsgBox

Life is soft - evento anual de software empresarial
   
Vista:

MsgBox

Publicado por Juan (52 intervenciones) el 06/08/2009 12:51:13
Hola a todos,

Alguien me puede decir como hacer para que al clickar en cancelar de un MSGBOX, además de cerrarse el MSGBOX me ponga un checkbox en value=falso.

Intento hacer lo siguiente

if msgbox=vbNO then
checkbox1.value=false
end if

y no funciona como yo quiero ya que me realiza la operación de desclikar el checkbox, pero antes de cerrar el msgbox por lo que tengo que darle a cancelar de nuevo

Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:MsgBox

Publicado por Rolando (115 intervenciones) el 06/08/2009 16:36:48
Aqui esta el codigo.

IF MsgBox("Desea hacer la operacion" , vbYesNo,"")=vbYes then
checkbox1.value = false
end if

Saludos

Rolando Lau
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por Rolando (115 intervenciones) el 06/08/2009 17:03:47
Si se marca "SI"
IF MsgBox("Desea hacer la operacion" , vbYesNo,"")=vbYes then
checkbox1.value = false
end if

Si se marca "NO"
IF MsgBox("Desea hacer la operacion" , vbYesNo,"")=vbNo then
checkbox1.value = false
end if

Si se marca "Cancelar"
IF MsgBox("Desea hacer la operacion" , vbYesNo,"")=vbCancel then
checkbox1.value = false
end if

Para los 3 casos

Mas completo

PD: A mi colega jaime, creo que deberiamos cobrar honorario jajaja
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por Juan (52 intervenciones) el 07/08/2009 19:07:41
Hola Rolando

Gracias por tu respuesta pero si lo pruebas verás que no funciona. Ocurre lo mismo que te pongo en la pregunta. Primero pone el check1 a valor falso y para salir del msgbox le has de dar 2 veces a Cancelar

Pruebalo y verás( no es tan facil)

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por JaImE GuErReRo (361 intervenciones) el 06/08/2009 16:48:31
ponle vbCancel en vez de vbno
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por Juan (52 intervenciones) el 07/08/2009 19:05:26
Hola JaImE GuErReRo,

Gracias por tu respuesta pero si hago lo que dices me sale del msgbox a la primera pero en cambio no me pone el check1 a falso

Esto es lo que he hecho

.
.
.
elseif msgbox(,,,)=vbCancel then
check1.value=false
end if

y no funciona

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por JaImE GuErReRo (361 intervenciones) el 10/08/2009 16:39:44
le has puesto como botones vbyesnocancel, ahi puede estar el problema. ya que yo uso lo mismo para un codigo que tengo

ose en el msgbox pones

msgbox("mensaje",vbQuestion+vbYesNoCancel,"titulo")
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por juan carlos (518 intervenciones) el 16/08/2009 02:19:48
perdon juan me equivoque en el mensaje anterior
puse lo mismo
este es el codigo que te iba a mandar

info1 = "¿ Desea introducir ......"
info2 = "para aumentar la búsqueda ?"
info3 = "Ampliar rangos de búsqueda"

inf = MsgBox(info1 & vbCrLf & info2, vbQuestion + vbYesNoCancel, info3)

If inf <> vbYes Then
Check1(0).Value = False
ElseIf inf = vbYes Then
MsgBox "ampliar_rangos"
End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por Juan (52 intervenciones) el 10/08/2009 18:40:33
Hola JaImE GuErReRo ,

Te paso lo que he puesto, que creo que es lo que tú me dices y me comentas, contimua sin funcionarme????

info1 = "¿ Desea introducir ......"
info2 = "para aumentar la búsqueda ?"
info3 = "Ampliar rangos de búsqueda"

inf = msgbox(info1 & vbCrLf & info2, vbQuestion + vbYesNoCancel, info3)

If inf = vbYes Then
ampliar_rangos
ElseIf inf = vbCancel Then
Check1(0).Value = False
End If

Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por JaImE GuErReRo (361 intervenciones) el 10/08/2009 21:42:17
el codigo que puesto esta bien.

porsiaca has el siguiente cambio

en vez de Check1(0).Value = False
pon msgbox "presiono cancelar"

para saber si esta entrando. en caso te salga el mensaje el problema esta en el nombre de tu control check
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por Juan (52 intervenciones) el 11/08/2009 12:57:28
Probé lo que me dijiste y efectivamente se muestra el msgbox con lo que el problema pueda estar en el check???

He observado que si creo otro check diferente al asociado al msgbox, entonces si que funciona. Es decir cuando cliko al check1 me sale el msgbox y al darle a cancelar me pone el check2(el nuevo) en valor falso de forma correcta pero no el check1. Es como si funcionara para objetos que no están ligados al msgbox???
¿Que cosa más rara, NO?
Te agradecería que te lo miraras para ver si te pasa lo mismo
Muchisimas gracias por el interés
Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por juan carlos (518 intervenciones) el 16/08/2009 02:15:13
hola juan aqui esta la solucion a tu problema
espero te sirva
respondeme si te sirvio por favor
mi mail es
mega.juca@hotmail.es
lo meti en un command1para probarlo


Private Sub Command2_Click()
info1 = "¿ Desea introducir ......"
info2 = "para aumentar la búsqueda ?"
info3 = "Ampliar rangos de búsqueda"

inf = MsgBox(info1 & vbCrLf & info2, vbQuestion + vbYesNoCancel, info3)

If inf = vbYes Then
MsgBox "ampliar_rangos"
ElseIf inf = vbCancel Then
Check1(0).Value = False
End If
End Sub
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:MsgBox

Publicado por juan carlos (518 intervenciones) el 16/08/2009 02:24:13
perdoname juan me equivoque en el codigo anterior que te envie
verdaderamente lo siento
este es el codigo

info1 = "¿ Desea introducir ......"
info2 = "para aumentar la búsqueda ?"
info3 = "Ampliar rangos de búsqueda"

inf = MsgBox(info1 & vbCrLf & info2, vbQuestion + vbYesNoCancel, info3)

If inf <> vbYes Then
Check1(0).Value = False
ElseIf inf = vbYes Then
MsgBox "ampliar_rangos"
End If
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar