Bloquear celdas

02/11/2007 - 04:08 por RCenteno | Informe spam
Holas, como puedo hacer para bloquear celdas en función a lo ingresado en una
celda, ejemplo: se el valor de la celda A1=1 entonces, se bloquea la celda A2
y A3, permitiendome desplazandose directamente a las celda A4.
si el valor de la celda A1= 0 no se bloquea nada y paso directamente a la
celda A2 y asi sucecivamente.

gracias anticipadas
RCenteno - Perú

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
02/11/2007 - 08:38 | Informe spam
hola, !

... como puedo hacer para bloquear celdas en funcion a lo ingresado en una celda ejemplo:
se el valor de la celda A1=1 entonces, se bloquea la celda A2 y A3... desplazandose directamente a las celda A4.
si el valor de la celda A1= 0 no se bloquea nada y paso directamente a la celda A2 y asi sucecivamente...



(en ocasiones) este tipo de preguntas resultan ser (como) una "punta de iceberg"...

si el fondo del asunto es tan directo, sencilo o simple como lo hipotetico de la pregunta...
y si solo se introducen datos manualmente en las celdas, podria ser tan sencillo como usar reglas de validacion (p.e.)
-> selecciona 'A2:A3', (menu) datos / validacion / (configuracion) personalizada / formula: =$a$1<>1
(puedes aprovechar la seccion del "mensaje de error" para informar al usuario que la celda A1 ya contiene: 1 -u otra condicion-)

si lo prefieres, puedes "administrar" la proteccion en hoja y celdas por medio de los eventos en el modulo de codigo de "esa" hoja
(p.e. para forzar el avance de celdas hasta A4 y/o prohibir la seleccion de las celdas 'A2:A3')
necesitaras habilitar la proteccion de la hoja con la interfaz de usuario en el evento de apertura del libro -?-

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 RCenteno
08/11/2007 - 04:19 | Informe spam
Hola Hector Miguel, gracias por tu atención, me explico con un ejemplo,
cuando deseo que sólo se pueda digitar e las celdas que yo elija, desbloqueo
la celda y protejo la hoja y en propiedades del la hoja activo el
UNLOKEDCELL, esto sólo va a permitir que me dezplace por las celdas
desprotegidas, mi intención es hacer los mismo, sólo que al inicio la celda
A2 y A3 estaran desbloquedas, lo que quiero es que estando en esa condición,
y digitandose un valor en A1, las celdas A2 y A3 se bloqueen y el cursor pase
directamente a A4, como si las celdas A2 y A3 hubieran estado bloqueadas, si
no me explico adecuadamente, a que correo puedo enviarte un archivo?
Saludos
Respuesta Responder a este mensaje
#3 Héctor Miguel
08/11/2007 - 06:46 | Informe spam
hola, !

... cuando deseo que solo se pueda digitar e las celdas que yo elija, desbloqueo la celda y protejo la hoja
y en propiedades del la hoja activo el UNLOKEDCELL, esto solo va a permitir que me dezplace por las celdas desprotegidas
mi intencion es hacer los mismo, solo que al inicio la celda A2 y A3 estaran desbloquedas
lo que quiero es que estando en esa condicion, y digitandose un valor en A1, las celdas A2 y A3 se bloqueen
y el cursor pase directamente a A4, como si las celdas A2 y A3 hubieran estado bloqueadas ...



prueba con algo +/- como lo siguiente (segun y de acuerdo a los datos/celdas que expones)...

1) en el modulo de codigo del libro (ThisWorkbook)
' proteges la hoja en el evento '_open' de tu libro cada vez que se abra con la opcion de solo la interfase con el usuario _
(excel se olvida de algunas caracteristicas como esta y la de seleccionar solo desbloqueadas)
Private Sub Workbook_Open()
Worksheets("hoja1").Protect "aBc", 1, 1, 1, 1
End Sub

2) en el modulo de codgo de "esa" hoja
' sera necesario evitar que el usuario seleccione mas de una celda a la vez (para prevenir otras eventualidades)
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Intersect(Target, [a1]) Is Nothing _
And Target.Count > 1 Then ActiveCell.Select
End Sub
' y aplicar la des/re/proteccion de A2:A3 segun si A1 esta vacia (o no)
Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, [a1]) Is Nothing Then Exit Sub
[a2:a3].Locked = Not IsEmpty([a1])
Me.EnableSelection = xlUnlockedCells
End Sub

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida