Evento BeforeClose

01/12/2005 - 22:19 por Charles | Informe spam
Estimados,

Tengo un libro donde una celda tiene un formato condicional donde si cumple
determinadas condiciones el fondo de la celda se pinta de color rojo.
Ahora bien, utilizando el evento BeforeClose (lo puse dentro de la hoja
donde tiene esa celda en cuestión) puse lo siguiente para que envíe un
mensaje a quien lo está utilizando antes de cerrarlo pero no sé que hago mal
que no sale dicho mensaje.
Aclaro que dicha macro la pongo como módulo y ahí si funciona bien, este es
que envía el mensaje cuando cumple la condición sin problemas. Agradezco
vuestra ayuda.

el texto es :

Private Sub Workbook_BeforeClose(Cancel As Boolean)


If Worksheets("Nombre de la
hoja").Range("L1").FormatConditions(1).Interior.ColorIndex = 3 Then

mipregunta = MsgBox("xxxxxxxxxxxxxxxxx", vbOKOnly)
If mipregunta = vbOKOnly Then
Exit Sub


End If
End If

End Sub

Preguntas similare

Leer las respuestas

#1 David
02/12/2005 - 00:24 | Informe spam
No nos dices qué pretendes con tu pregunta, así que asumiendo que tu pregunta
es "Está seguro de querer salir", modificaría un poco tu código a esto:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
If
Worksheets("Hoja1").Range("L1").FormatConditions(1).Interior.ColorIndex = 3
Then
mipregunta = MsgBox("xxxxxxxxxxxxxxxxx", vbOKCancel)
If mipregunta <> 1 Then Cancel = True
End If
End Sub

Nota que en el evento BeforeClose, la variable Cancel puede cambiarse a True
para cancelarlo y que tu archivo continúe abierto.

"Charles" escribió:

Estimados,

Tengo un libro donde una celda tiene un formato condicional donde si cumple
determinadas condiciones el fondo de la celda se pinta de color rojo.
Ahora bien, utilizando el evento BeforeClose (lo puse dentro de la hoja
donde tiene esa celda en cuestión) puse lo siguiente para que envíe un
mensaje a quien lo está utilizando antes de cerrarlo pero no sé que hago mal
que no sale dicho mensaje.
Aclaro que dicha macro la pongo como módulo y ahí si funciona bien, este es
que envía el mensaje cuando cumple la condición sin problemas. Agradezco
vuestra ayuda.

el texto es :

Private Sub Workbook_BeforeClose(Cancel As Boolean)


If Worksheets("Nombre de la
hoja").Range("L1").FormatConditions(1).Interior.ColorIndex = 3 Then

mipregunta = MsgBox("xxxxxxxxxxxxxxxxx", vbOKOnly)
If mipregunta = vbOKOnly Then
Exit Sub


End If
End If

End Sub
Respuesta Responder a este mensaje
#2 Charles
02/12/2005 - 12:48 | Informe spam
perdón porque finalmente no fui nada claro.
quise decir que no me funciona, al cerrar el libro (y que cumpliendo la
condición) no me sale el mensaje. El código lo puse en la hoja donde está la
celda con el formato condicional.
Después lo que hice fue poner el código en un módulo como si fuera un macro
para comprobar el if y esto está bien (confirmar la condición de la celda),
pero en definitiva no funciona como yo quiero, que es al cerrar el libro me
envíe el mensaje.
¿ me puedes ayudar ? gracias por todo

charles


"David" escribió:

No nos dices qué pretendes con tu pregunta, así que asumiendo que tu pregunta
es "Está seguro de querer salir", modificaría un poco tu código a esto:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
If
Worksheets("Hoja1").Range("L1").FormatConditions(1).Interior.ColorIndex = 3
Then
mipregunta = MsgBox("xxxxxxxxxxxxxxxxx", vbOKCancel)
If mipregunta <> 1 Then Cancel = True
End If
End Sub

Nota que en el evento BeforeClose, la variable Cancel puede cambiarse a True
para cancelarlo y que tu archivo continúe abierto.

"Charles" escribió:

> Estimados,
>
> Tengo un libro donde una celda tiene un formato condicional donde si cumple
> determinadas condiciones el fondo de la celda se pinta de color rojo.
> Ahora bien, utilizando el evento BeforeClose (lo puse dentro de la hoja
> donde tiene esa celda en cuestión) puse lo siguiente para que envíe un
> mensaje a quien lo está utilizando antes de cerrarlo pero no sé que hago mal
> que no sale dicho mensaje.
> Aclaro que dicha macro la pongo como módulo y ahí si funciona bien, este es
> que envía el mensaje cuando cumple la condición sin problemas. Agradezco
> vuestra ayuda.
>
> el texto es :
>
> Private Sub Workbook_BeforeClose(Cancel As Boolean)
>
>
> If Worksheets("Nombre de la
> hoja").Range("L1").FormatConditions(1).Interior.ColorIndex = 3 Then
>
> mipregunta = MsgBox("xxxxxxxxxxxxxxxxx", vbOKOnly)
> If mipregunta = vbOKOnly Then
> Exit Sub
>
>
> End If
> End If
>
> End Sub
Respuesta Responder a este mensaje
#3 Charles
02/12/2005 - 15:26 | Informe spam
ya encontré el problema, es un evento para el libro y yo lo estaba poniendo
en una hoja. Ahora pase el código al libro y funcionó
gracias


"Charles" escribió:

perdón porque finalmente no fui nada claro.
quise decir que no me funciona, al cerrar el libro (y que cumpliendo la
condición) no me sale el mensaje. El código lo puse en la hoja donde está la
celda con el formato condicional.
Después lo que hice fue poner el código en un módulo como si fuera un macro
para comprobar el if y esto está bien (confirmar la condición de la celda),
pero en definitiva no funciona como yo quiero, que es al cerrar el libro me
envíe el mensaje.
¿ me puedes ayudar ? gracias por todo

charles


"David" escribió:

> No nos dices qué pretendes con tu pregunta, así que asumiendo que tu pregunta
> es "Está seguro de querer salir", modificaría un poco tu código a esto:
>
> Private Sub Workbook_BeforeClose(Cancel As Boolean)
> If
> Worksheets("Hoja1").Range("L1").FormatConditions(1).Interior.ColorIndex = 3
> Then
> mipregunta = MsgBox("xxxxxxxxxxxxxxxxx", vbOKCancel)
> If mipregunta <> 1 Then Cancel = True
> End If
> End Sub
>
> Nota que en el evento BeforeClose, la variable Cancel puede cambiarse a True
> para cancelarlo y que tu archivo continúe abierto.
>
> "Charles" escribió:
>
> > Estimados,
> >
> > Tengo un libro donde una celda tiene un formato condicional donde si cumple
> > determinadas condiciones el fondo de la celda se pinta de color rojo.
> > Ahora bien, utilizando el evento BeforeClose (lo puse dentro de la hoja
> > donde tiene esa celda en cuestión) puse lo siguiente para que envíe un
> > mensaje a quien lo está utilizando antes de cerrarlo pero no sé que hago mal
> > que no sale dicho mensaje.
> > Aclaro que dicha macro la pongo como módulo y ahí si funciona bien, este es
> > que envía el mensaje cuando cumple la condición sin problemas. Agradezco
> > vuestra ayuda.
> >
> > el texto es :
> >
> > Private Sub Workbook_BeforeClose(Cancel As Boolean)
> >
> >
> > If Worksheets("Nombre de la
> > hoja").Range("L1").FormatConditions(1).Interior.ColorIndex = 3 Then
> >
> > mipregunta = MsgBox("xxxxxxxxxxxxxxxxx", vbOKOnly)
> > If mipregunta = vbOKOnly Then
> > Exit Sub
> >
> >
> > End If
> > End If
> >
> > End Sub
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida