PROTECT

15/11/2007 - 05:35 por Orfao | Informe spam
Hola !
Estaba leyendo sobre proteccion de archivos en
http://j-walk.com/ss/excel/faqs/protectionFAQ.htm
y consegui algo muy interesante y nuevo para mi.
Cito:
Can I set things up so my VBA macro can make changes to Locked cells on a
protected sheet?
Yes, you can write a macro that protects the worksheet, but still allows
changes via macro code. The trick is to protect the sheet with the
UserInterfaceOnly parameter. Here's an example:

ActiveSheet.Protect UserInterfaceOnly:=True
After this statement is executed, the worksheet is protected -- but your VBA
code will still be able to make changes to locked cells and perform other
operation that are not possible on a protected worksheet.

fin de la cita.

Entonces al contrario de lo que yo venia haciendo hasta ahora
ya no necesito estar protegiendo y desprotegiendo hojas del libro via codigo
cada vez que en un macro requiera modificar algun rango o celda o imagen o
graficos o cualquier cosa.
en realidad no he tenido oportunidad de probar este metodo pero me ahorraria
bastante al eliminar todo ese codigo innecesario shhet(fulana).protect -
sheets(sutana)unprotect... tengo todas mis macros llenas de esas intrucciones
cada vez que activo/desactivo controles, eetc. (busco la maxima
seguridad)..pero ahora espero y aspiro que todo cambie...
ahora bien..
que otra utilidad tiene la instruccion
ActiveSheet.Protect UserInterfaceOnly:=True/false
aparte de no permitir que el usuario pueda detener ela ejecucion de codigo o
ahora esta nueva caracteristica... ???
y una preguntica mas...
habra forma de evitar que se lean/escriban rangos de archivos cerrados ?
acaso el metodo protect/unprotect deja de funcionar cuando el archivo esta
guardado? Ni idea.
GRACIAS





Me alimento del conocimiento de todos
 

Leer las respuestas

#1 Corando
18/11/2007 - 16:03 | Informe spam
Hola, Orfao.
Puedes usar lo siguiente para Proteger y Desproteger Hojas en las
MACROS, podria decirse que en forma automatica .

ActiveSheet.Unprotect Password:="12345" '

Donde "12345" , seria tu contraseña o clave, la cual la macro lo reconoce
cada vez que se ejecuta. Tambien las puedes Proteger y Desproteger
manualmente a las hojas donde se utiliza dichas macros.
Para asegurarte que las insertas o modificas completamente en todas las
macros, utiliza la funcion "BUSCAR" o "FIND", : Protect, luego REEMPLAZAR
por: protect Password:="12345" '

Preguntas similares