Detectar cambios en la hoja

14/04/2004 - 20:09 por BlackDraGoN | Informe spam
Hola a todos:

Tengo una hoja en la cual he insertado 2 botones, "salir guardando" y "salir
sin guardar", quisiera saber cuales son las funciones o comandos encargados
de guardar todo o descartar todo.

Hay alguna forma de evitar que cierren la hoja pulsando sobre la "x" de la
ventana.

Y por ultimo cuando se pulsa uno de los botones quisiera cerrar la hoja y
salir de Excel, como puedo hacelo.


Muchas Gracias por adelantado.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
14/04/2004 - 21:30 | Informe spam
hola ;)

... hoja ... 2 botones, "salir guardando" y "salir sin guardar"
... cuales son las funciones o comandos encargados de guardar todo o descartar todo.


_________
'dependiendo' de si los botones los insertaste con la barra de herramientas 'formularios' o 'cuadro de controles'...
[boton de formularios] desde un modulo de codigo 'normal'...
=> Workbooks("Nombre del libro").Close SaveChanges:=False ' o True ???
=> FALLARA si el usuario le cambia de nombre al libro y no 'coincide' con el 'usado' por la macro
[boton de cuacro de controles] desde el modulo de codigo de 'la hoja'...
=> ThisWorkbook.Close SaveChanges:=True ' o False ???

... alguna forma de evitar que cierren la hoja pulsando sobre la "x" de la ventana.


_________
la siguiente instruccion 'impide' al usuario 'cerrar' el libro =>tampoco podra 'terminar' la sesion de excel< en el modulo de codigo del libro [ThisWorkbook] ==Private Sub Workbook_BeforeClose(Cancel As Boolean)
Cancel = True
End Sub
=> para 'poder salir' [inclusive 'tu mismo'] de excel, deberas 'proporcionar' alguna 'clave o permiso' de tipo 'boolean'
'puesta' como 'public' en la seccion de declaraciones de un modulo de codigo 'normal' [p.e. 'SePuedeSalir']
cambiarias la instrucion a: => If Not SePuedeSalir Then Cancel = True < y 'darias permiso de salir' en el codigo del boton [p.e.]
:::::
SePuedeSalir = True
ThisWorkbook.Close False ' o True si quieres o no guardar los cambios
:::::

... por ultimo cuando se pulsa uno de los botones quisiera cerrar la hoja y salir de Excel [...]


________
usando 'Application.Quit' ANTES de 'cerrar' tu libro [p.e.]:

1.- la siguiente forma, cierra el libro [guardar cambios es opcional], pero... NO cierra la aplicacion :((
Sub Cerrar_Todo()
ThisWorkbook.Close False ' o True para salvar los cambios '
Application.Quit ' <== esta línea YA NO se ejecuta :(( '
End Sub

2.- pero... si inviertes el orden de los factores, SI funciona :))
Sub Cerrar_Todo()
Application.Quit
ThisWorkbook.Close False ' ó True para salvar los cambios '
End Sub

Nota: si hay varios libros abiertos y alguno/s ha/n tenido cambios, se necesitara algo +/- como lo siguiente:
Sub Cerrar_Todo()
Dim Libro as Workbook
For Each Libro In Application.Workbooks
' alguna rutina para 'detectar' cual es el libro [excluyendo a este libro] y decidir si se guardan [o no] los cambios '
Next
Application.Quit
ThisWorkbook.Close False ' ó True para salvar los cambios '
End Sub

saludos,
hector.
Respuesta Responder a este mensaje
#2 Zven
14/04/2004 - 22:59 | Informe spam
Perdón, pero, y si sólo quiero que haya un botón que guarde
los cambios que debo escribir en el código?
Saludos y gracias de antemano
Respuesta Responder a este mensaje
#3 Héctor Miguel
14/04/2004 - 23:16 | Informe spam
hola, Zven !

... solo quiero ... un boton que guarde los cambios que debo escribir en el codigo?



1° te peguntaria:
¿para que insertar un boton + escribir codigo + asignarselo al boton ... si ...
tienes disponible un 'atajo de teclado' => {Ctrl}+"g" [o {Ctrl}+"s" para excel en ingles] ???

2° [para no 'complicarte' con 'mas' informacion 'de la que necesitas' :))] te pregunto:
¿con cual barra de herramientas creaste el boton? -formularios o... cuadro de controles-
[o se trata de algun otro tipo de 'figura'?]

¿comentas?
saludos,
hector.
Respuesta Responder a este mensaje
#4 Zven
15/04/2004 - 00:28 | Informe spam
En realidad sólo me llamó la atención este botón que le
recomendaste a BlackDragon. Es por ello que pregunté sobre
uno para sólo guardar, como puedes ver no se nada de VB,
pero bueno en eso estamos...
Gracias !!!
Respuesta Responder a este mensaje
#5 Héctor Miguel
15/04/2004 - 00:55 | Informe spam
hola, Zven !

... solo me llamo la atencion este boton que le recomendaste a BlackDragon.
... por ello ... pregunte sobre uno para solo guardar [...]



en tal caso, puedes utilizar [algo como] lo 'sugerido' [segun la 'variante' que se aplique] cambiando...
de =>.Close SaveChanges:=False ' o True ???<= 'simplemente'...
a =>.Save<
saludos,
hector.
Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaSiguiente Respuesta Tengo una respuesta
Search Busqueda sugerida