NESESITO UN CODIGO

30/10/2006 - 05:25 por LUIS DANNY SALAS | Informe spam
Hola estimados amigos, un saludo cordial desde Costa Rica.
Tengo una pequena nesesidad.

tengo una macro que desportege una hoja , hace algunos cambios y luego la
vuleve a proteger.
lo que pasa es que funciona bien si la hoja esta protegida pero sin clave,
quisera saber que instruccion le pongo para que a la hora de porteger y
desproteger incluya tambien la clave que yo le haya puesto, y asi al final
quede protegida pero con clave.

Private Sub ACTUALIZAR()

Application.ScreenUpdating = False

Sheets("MATRICULA").Select

ActiveSheet.Unprotect



...





ActiveSheet.Protect DrawingObjects:=True, Contents:=True,
Scenarios:=True

ActiveSheet.EnableSelection = xlNoSelection






gracias.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
30/10/2006 - 04:45 | Informe spam
hola, Luis !

tengo una macro que desportege una hoja , hace algunos cambios y luego la vuleve a proteger.
lo que pasa es que funciona bien si la hoja esta protegida pero sin clave
quisera saber que instruccion le pongo para que a la hora de porteger y desproteger
incluya tambien la clave que yo le haya puesto, y asi al final quede protegida pero con clave...



si necesitas que la proteccion NO 'afecte' a tus macros ->SIN tener que [des/re]proteger la hoja<-
puedes usar la instruccion de 'solo interfase de usuario' y dejarla protegida desde la apertura del libro [p.e.]

en el modulo de codigo del libro ==Private Sub Workbook_Open()
With Worksheets("matricula")
.Protect _
DrawingObjects:=True, _
Contents:=True, _
Scenarios:=True
UserInterfaceOnly:=True
.EnableSelection = xlNoSelection
End Sub

[practicamente] TODO lo que 'hagas por codigo'... pasara 'sin problemas'
-> excepto 'ciertas' cosillas relacionadas con insertar filas/columnas y objetos incrustados :-((
en cuyo caso puedes agregar la clave tanto en la instruccion .Unprotect como en la del .Protect ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 Héctor Miguel
31/10/2006 - 04:09 | Informe spam
hola, Luis !

como le agrego la clave a la instruccion Unprotect o a la Protect, poniendloa entre parentesis cuadrados o como?



1) el metodo protect usa basicamente 4 instrucciones cuando se trata de la proteccion a hojas de calculo:
-> Protect(Password, DrawingObjects, Contents, Scenarios, UserInterfaceOnly) y sus valores 'por omision' son:
Password [a menos que la indiques] asume una cadena de texto vacia
DrawingObjects [para los objetos de dibujo] se queda en False
Contents [para las celdas individuales excepto las desprotegids] asume True
Scenarios [contexto 'obvio'] su valor predeterminado es True
UserInterfaceOnly [para que tus macros SI puedan 'actuar' en hojas protegidas] si se 'omite' prohibe a macros y usuario

2) ejemplos de aplicacion:
a) secuencialmente aplicando solo el password y la interfase de usuario [las demas sus valores 'por omision']...
<hoja>.Protect "123", , , , True <= OJO: se incluyen las comas de los argumentos omitidos...
b) usando los mismos argumentos pero utilizando sus nombres:
<hoja>. Protect PassWord:="123", UserInterfaceOnly:=True
c) para la desproteccion de una hoja [el password es requerido a partir de la version 2002 -en caso de existir-]
<hoja>.Unprotect "123"

saludos,
hector.
Respuesta Responder a este mensaje
#3 LUIS DANNY SALAS
31/10/2006 - 05:43 | Informe spam
GRACIAS.
como le agrego la clave a la instruccion Unprotect o a la Protect,
poniendloa entre parentesis cuadrados o como?
"Héctor Miguel" wrote in message
news:OgRYJX9%
hola, Luis !

> tengo una macro que desportege una hoja , hace algunos cambios y luego


la vuleve a proteger.
> lo que pasa es que funciona bien si la hoja esta protegida pero sin


clave
> quisera saber que instruccion le pongo para que a la hora de porteger y


desproteger
> incluya tambien la clave que yo le haya puesto, y asi al final quede


protegida pero con clave...

si necesitas que la proteccion NO 'afecte' a tus macros ->SIN tener que


[des/re]proteger la hoja<-
puedes usar la instruccion de 'solo interfase de usuario' y dejarla


protegida desde la apertura del libro [p.e.]

en el modulo de codigo del libro ==> Private Sub Workbook_Open()
With Worksheets("matricula")
.Protect _
DrawingObjects:=True, _
Contents:=True, _
Scenarios:=True
UserInterfaceOnly:=True
.EnableSelection = xlNoSelection
End Sub

[practicamente] TODO lo que 'hagas por codigo'... pasara 'sin problemas'
-> excepto 'ciertas' cosillas relacionadas con insertar filas/columnas y


objetos incrustados :-((
en cuyo caso puedes agregar la clave tanto en la instruccion


.Unprotect como en la del .Protect ;)

si cualquier duda [o informacion adicional]... comentas ?
saludos,
hector.


Respuesta Responder a este mensaje
#4 LUIS DANNY SALAS
31/10/2006 - 06:16 | Informe spam
G racias Hector, no tengo como pagarte.

"Héctor Miguel" wrote in message
news:%23md61nJ$
hola, Luis !

> como le agrego la clave a la instruccion Unprotect o a la Protect,


poniendloa entre parentesis cuadrados o como?

1) el metodo protect usa basicamente 4 instrucciones cuando se trata de la


proteccion a hojas de calculo:
-> Protect(Password, DrawingObjects, Contents, Scenarios,


UserInterfaceOnly) y sus valores 'por omision' son:
Password [a menos que la indiques] asume una cadena de texto vacia
DrawingObjects [para los objetos de dibujo] se queda en False
Contents [para las celdas individuales excepto las desprotegids] asume


True
Scenarios [contexto 'obvio'] su valor predeterminado es True
UserInterfaceOnly [para que tus macros SI puedan 'actuar' en hojas


protegidas] si se 'omite' prohibe a macros y usuario

2) ejemplos de aplicacion:
a) secuencialmente aplicando solo el password y la interfase de


usuario [las demas sus valores 'por omision']...
<hoja>.Protect "123", , , , True <= OJO: se incluyen las comas


de los argumentos omitidos...
b) usando los mismos argumentos pero utilizando sus nombres:
<hoja>. Protect PassWord:="123", UserInterfaceOnly:=True
c) para la desproteccion de una hoja [el password es requerido a


partir de la version 2002 -en caso de existir-]
<hoja>.Unprotect "123"

saludos,
hector.


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida