Excel - ayuda con Sub Auto_Close

   
Vista:

ayuda con Sub Auto_Close

Publicado por Oscar Gabriel (13 intervenciones) el 07/05/2008 20:27:32
Hola a todos y gracias por leer mi nota, el problema que tengo ahora es :

En un archivo que tengo protegido bajo una macro, esconde las hojas que no deseo que vean ciertos usuarios. Trabaja perfectamente pero tengo incluida la opcion que al cerrar. abra todas las hojas ocultas con un Auto_Close. El problema con el que me encuentro es que a la hora de cerrar un archivo, excel hace la pregunta de que si desea hacer cambios (para esto ya corrio el sub auto_close y abrio todas las hojas), si alguien da click en "Cancelar" entonces lo deja con todas las hojas abiertas y pueden seguir trabajando viendo la informacion que no deseo que vean...

alguien me puede ayudar para no permitir esto?

Sub auto_close()
Dim wsheets As Worksheet
Application.ScreenUpdating = False

For Each wsheets In Worksheets
wsheets.Visible = True
wsheets.Protect Password:="admin"
Next

Dim Prompt As VbMsgBoxResult
If ThisWorkbook.Saved = False Then
With Application
.DisplayAlerts = False
Prompt = MsgBox("Desea guardar los cambios a'" & _
ThisWorkbook.Name & "'?", vbExclamation + vbYesNoCancel)
Select Case Prompt
Case vbYes
ThisWorkbook.Save
Case vbNo
ThisWorkbook.Close False
Case vbCancel
UserForm1.Show *****AQUI ES DONDE NO SE QUE HACER! SI LE PONGO QUE MUESTRE EL USERFORM ME DA UN ERROR*****
End Select
.DisplayAlerts = True
End With
End If

Application.ScreenUpdating = True
End Sub
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:ayuda con Sub Auto_Close

Publicado por Marvin Osorio (368 intervenciones) el 07/05/2008 21:31:43
Ummm... tienes una macro como Sub auto_Open() que te oculte nuevamente las hojas?
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:ayuda con Sub Auto_Close

Publicado por Oscar Gabriel (13 intervenciones) el 08/05/2008 16:17:19
Mi auto_open muestra todas las hojas y lanza el userform donde pide usuario y contraseña, y no hay forma de cerrar la macro de inicio, tras poner su ususario y contraseña entonces ya oculta las hojas que no deseo que dicho usuario vea.

todo el macro funciona de maravilla y le introduje una interefaz de manejo de contraseñas y accesos muy interesantes y faciles de utilizar para los directores de la empresa, pero el unico problema que tengo es que ya son 2 -3 usuarios que se saben el truco de apretar cancelar, y ver todas las hojas...
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:ayuda con Sub Auto_Close

Publicado por Marvin Osorio (368 intervenciones) el 08/05/2008 18:54:20
Umm...es que el procedimiento de seguridad lo tienes al reves, es decir cuando ellos ingresen su contraseña las hojas que pueden utilizar deben mostrarse, tu ahora lo tienes que ellos entran su contraseña entonces las hojas que no pueden utilizar se ocultan.

Otra opción sería que al botón de cancelar, modificaras el código para que cuando este se active te oculte las hojas y así aunque le den cancelar las hojas no se mostraran.

Salu2
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:ayuda con Sub Auto_Close

Publicado por Oscar Gabriel (13 intervenciones) el 09/05/2008 18:33:23
muchas gracias marvin,
si la verdad es que desde un principio lo pense de esa manera pero tenía una pequeña duda, estos datos que se encuentran en hojas muy ocultas (xlVeryHidden) estan vinculados a otros archivos, y no se si Excel no me actualize los datos en mis otros archivos si sus hojas estan escondidas, o estoy equivocado??

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:Ocultar Hoja dentro de THISWORKBOOK

Publicado por Carina Chacon (20 intervenciones) el 08/05/2008 17:55:54
Buenos Dias amor soy Carina de Venezuela tengo un inquietud espero q me ayudes ok. Sabes tengo un programa la cual me faltan algunos detelles para terminar.... solo quiero q cuando abra mi programa se me oculten las hojas q se encuentran detras q n se vean. tambien quiero saber como haces para q cuando el usuario entra a tu programa y coloca la contrseña incorrecta como haces para q n c quede pegado el programa y te salga un mensaje como INTENTE D NUEVO o algo asi. GRCIAS CCS VZLA.
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:Ocultar Hoja dentro de THISWORKBOOK

Publicado por Marvin Osorio (368 intervenciones) el 08/05/2008 19:02:14
Carina esto te puede ayudar para el primer caso, ambos lo tienes que pegar en un modulo normal.

'Para mostrar la hoja
Sub auto_open()
Para mostrar una hoja Worksheets("nombre de hoja").Visible = False
End Sub

'Para ocultar la hoja
Sub auto_open()
Worksheets("Registros Históricos").Visible = xlSheetVeryHidden
End Sub

y con el otro caso pues... debes utilizar IF sin embargo es un poquito más dificil de explicarlo por acá.... sería mejor que te enviara un ejemplo

DAme tu correo y te envio u ejemplo

Salu2
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:Ocultar Hoja dentro de THISWORKBOOK

Publicado por Carina Chacon (20 intervenciones) el 08/05/2008 19:30:32
ok gracias disculpa explicame como es eso de MODULO STANDAR o MODULO NORMAL:... no lo entiendo ok yo tengo un modulo se llama modulo 1 pero como hago para saber si es normal o standar..
con lo otro de la contraseña yo tengo este codigo:
Private Sub Label3_Click()
Sheets("Seguridad").Select
n = 5
fila = A + CStr(n)
Range("a5").Select
Do While ActiveCell.FormulaR1C1 <> ""
If Text1 = ActiveCell.FormulaR1C1 Then
fila = "b" + CStr(n)
Range("b5").Select
If Text2 = ActiveCell.FormulaR1C1 Then
Unload UserForm1
UserForm7.Show


End If
End If

n = n + 1
fila = "a" + CStr(n)
Range("a5").Select
Loop
c = c + 1
ActiveCell.Offset(1, 0).Select
Text1 = ""
Text2 = ""
Text1.SetFocus
End Sub
este me compara las 2 celdas y son iguales los codigos me manda a otra ventanilla.. pero si coloco mal la contrseña se queda pegao el programa.. MUCHAs gracias amor.. este es mi Correo Enigma596@hotmail.com
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:Ocultar Hoja dentro de THISWORKBOOK

Publicado por Carina (20 intervenciones) el 08/05/2008 19:43:07
Disculpa las molestias pero cuando voy a ocultar la pagina de la hoja de excel siempre n aparece. solo aparece las hojas restantes.. pero yo tengo un THISWORKBOOK verdad ese mismo contiene 4 hojas se llaman BARTENDER, CERVEZAS;SEGURIDAD,CONTROLCOSTOs. cuando colo ese codigo q m dijistes me oculta solo una hoja y no vuelve a apracer xq?..Yo lo unico q quiero es ocultarlos completo todas las hojas..
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:Ocultar Hoja dentro de THISWORKBOOK

Publicado por Carina (20 intervenciones) el 08/05/2008 19:56:07
Porque cuando me oculta todas las hojas... mira tengo un programa la cual cuando habilito macros me aparece una ventanilla q m pide nombre y contraseña ok en un formulario la cual atras me aparacen las hojas de excel verdad. cuando las oculto y entro al formulario de nombre y contraseña coloco el nombre correcto y contrseña y cuando me ve a abrir el otro formulario no lo abre al tamaño de la pantalla si no q aparace pequeñito n aparce ni siquiera la opciones y las funciones del programa solo me da propiedad para cerrar el programa. MAS NADA EXPLICAM X FAVOR
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:Ocultar Hoja dentro de THISWORKBOOK

Publicado por Abraham Valencia (2418 intervenciones) el 08/05/2008 20:08:32
Pues primero una cosa, modulo "standar" o "normal", son lo mismo

Sabes que, lamentablemente uno de los problemas que he apreciado, es que tu conocimiento de VBA es muy bajo, por lo que yo recomendaria, que si quieres usar macros, pues, leas y practiques mucho, y sobre todo, entiendas los codigos y procesos.

En todo caso, mira este ejemplo:

http://es.geocities.com/eavj666peru/Usuarios.xls

Abraham
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:Ocultar Hoja dentro de THISWORKBOOK

Publicado por Marvin Osorio (368 intervenciones) el 08/05/2008 21:53:59
Creo que el ejemplo que te envío Abraham te ayudará mucho, revisalo y trata de entender el código

Salu2
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:Ocultar Hoja dentro de THISWORKBOOK

Publicado por Carina (20 intervenciones) el 09/05/2008 16:18:56
ok gracias ah y disculpen creo q nadie nacio aprendido.. tengo apenas conociendo este programas n mas d un mes ok. x eso m enrredo mucho. GRACIAS CCS VZLA. ah dond puedo conseguir manual deMAcros
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:Ocultar Hoja dentro de THISWORKBOOK

Publicado por Hernan Calizaya Ponce mhymjr@hotmail.com (1 intervención) el 14/09/2013 14:23:00
es interesante lo que dices lo que yo quiero es que al abrir el Excel salga un base de datos para comensar a trabajar pero no en la hoja o sea no quiero que se vean las hojas quiero usar puro userform para meter notas eliminar notas mostrar reportes individuales asistencias haciendo clic en un listbox incluyendo datos personales pero todo referente a ese alumno 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