Funcionan las Macros en un libro protegido y compartido

23/03/2007 - 15:00 por Rovi | Informe spam
El problema que tengo es que tengo un libro con una macro creada que anda
bien, pero ahora quiero compartir el libro asi varias personas pueden
ingresar datos al mismo tiempo en sus rangos permitidos. Pero desde el
momento que hago esto, al querer correr la macro me tira un error diciendome
que las celdas que intento modificar estan protegidas.
Hay alguna manera de solucionar esto? Lo que hace la macro es sólo pintar
las columnas del mes seleccionado en la macro.
Ojala me puedan ayudar
Gracias!
 

Leer las respuestas

#1 Héctor Miguel
23/03/2007 - 23:20 | Informe spam
hola, !

El problema que tengo es que tengo un libro con una macro creada que anda bien, pero ahora quiero compartir el libro
asi varias personas pueden ingresar datos al mismo tiempo en sus rangos permitidos. Pero desde el momento que hago esto
al querer correr la macro me tira un error diciendome que las celdas que intento modificar estan protegidas.
Hay alguna manera de solucionar esto? Lo que hace la macro es solo pintar las columnas del mes seleccionado en la macro...



1) si necesitas que la proteccion NO 'afecte' a tus macros ->SIN tener que [des/re]proteger la hoja<-
[asumiendo que la hoja ya esta protegida]... puedes usar la instruccion de 'solo interfase de usuario'

ejemplos protegiendo la hoja al abrirse el libro en el modulo ThisWorkbook...

a) en excel 97 y 2000 NO necesitas 'repetir' el password <= es 'suficiente' con poner:
Private Sub Workbook_Open()
Worksheets("Hoja1").Protect UserInterfaceOnly:=True
End Sub

b) a partir de excel 2002 [xp] SI es requisito 'repetir' el password :-( <Private Sub Workbook_Open()
Worksheets("Hoja1").Protect _
PassWord:="la MISMA cOntRaSe#a qUe lE pUsISte", _
UserInterfaceOnly:=True
End Sub

c) si se trata de varias hojas [supoiendo una misma clave para todas]...
Private Sub Workbook_Open()
Dim Hoja As Worksheet
For Each Hoja In Worksheets(Array("hoja1", "hoja4", "hoja6"))
Hoja.Protect PassWord:="123", UserInterfaceOnly:=True
Next
End Sub

[practicamente] TODO lo que 'hagas por codigo'... pasara 'sin problemas'
[excepto 'ciertas' cosillas relacionadas con 'ordenaciones', insertar filas/columnas y objetos incrustados] :-((

2) por lo tocante a los libros 'compartidos'...
-> te sugiero consultar la ayuda en linea por este tema: limitaciones de los libros compartidos
[aunque] te 'anticipo' que dentro de las limitaciones que aplican a los libros compartidos..
por su misma carcteristica de 'compartido'... hay 'cosas que no hacen' en 'tiempo de ejecucion'
[p.e.] en un libro compartido NO se puede...
-> crear tablas[t/dinamicas] nuevas... -> agregar hipervinculos... -> des/re/proteger hojas de calculo... [etc.]
por lo que 'toca' a las macros 'existentes' [al momento de compartirlo]... continuan 'operables'
[hasta que 'tocan' alguna/s de las opciones 'prohibidas'] :(
-> el acceso al proyecto de macros [vba]... NO esta 'permitido' :((
[a menos que lo quites de 'compartido', con lo cual...]
-> al 'descompartir' el libro ->automaticamente<- SE PIERDE el historial de cambios :(((
[excel 'tiene sus razones' para ambas restricciones] ;)
-> una [posible] 'solucion' seria manejar las macros en libro 'aparte' [p.e. un complemento]
[con sus 'consabidas restricciones' en cuanto a las acciones 'no permitidas' NI por macros]

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

Preguntas similares